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 (154 xp)
Coloca el código, por favor.
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