Fernando Quintal Construcciones
Fernando Quintal Construcciones
General
Comparte:

Error al hacer una consulta para editar un registro que viene de dos tablas relacionadas

Al momento de querer editar un registro, el cuál proviene de dos tablas relacionadas me genera el siguiente error:
 
SQLSTATE[42000]: Syntax error or access violation: 1140 In aggregated query without GROUP BY, expression #1 of SELECT list contains nonaggregated column 'fqc2023.i.id'; this is incompatible with sql_mode=only_full_group_by

SELECT
  `i`.`id`,
  `parti`.`id` AS `part_id`,
  `parti`.`nombre`,
  `i`.`fecha`,
  `p`.`nombre` AS `proveedor`,
  `p`.`id` AS `id_provedor`,
  `i`.`forma_pago`,
  `i`.`comentario`,
  `i`.`estado`,
  `i`.`rfc`,
  `i`.`lugar`,
  `di`.`cantidad`,
  `di`.`precio`,
  round(sum(di.cantidad * precio), 2) AS subtotal,
  round(sum(di.cantidad * precio *.16), 2) AS iva,
  round(
    sum((di.cantidad * precio) + (di.cantidad * precio *.16)),
    2
  ) AS total
FROM
  `compras` AS `i`
  INNER JOIN `proveedores` AS `p` ON `i`.`proveedor_id` = `p`.`id`
  INNER JOIN `detalle_compras` AS `di` ON `i`.`id` = `di`.`compras_id`
  INNER JOIN `partidas` AS `parti` ON `i`.`partida_id` = `parti`.`id`
WHERE
  `i`.`id` = 1724
limit
  1
 
Alex Parra
Alex Parra (154 xp)
Coloca el código, por favor.
Fernando Quintal Construcciones
Fernando Quintal Construcciones (38 xp)
Mi estimado encontré la solución, se deben agrupor los campos donde se llevan a cabo cálculos, nuevas reglas en MySQL