cuando realizo una consulta tan simple como la que sigue me da un error, ¿Que le pasa a esta consulta que me da este error?, todos los campos son integer y están con datos numéricos.
El comando SQL que comporta este error es:
SELECT SUM( "importe" ) AS "sumatoria", "iva", "total" FROM "totales"
Estado SQL: 37000
Código de error: -67
Not in aggregate function or group by clause: org.hsqldb.Expression@190a0d6 in statement [SELECT SUM( "importe" ) AS "sumatoria", "iva", "total" FROM "totales"]
un saludo....
gracias...
[Solved] error en consulta en la instrucción que genera
-
- Mensajes: 3
- Registrado: Vie Sep 18, 2009 7:36 am
[Solved] error en consulta en la instrucción que genera
Última edición por pepo_kactus el Jue Oct 22, 2009 11:43 am, editado 1 vez en total.
Windows Xp, OpenOffice 3.1.0
-
- Mensajes: 3
- Registrado: Vie Sep 18, 2009 7:36 am
Re: error en consulta en la instrucción que genera
Dejé mi consulta en los foros ingleses y me dijeron esto:
http://www.1keydata.com/sql/sqlgroupby.html
SUM returns one number for the entire column. Any field you append to your aggregated "summatoria" needs to do the same trick (by means of SUM, COUNT, AVG, MIN, MAX,etc.) or it has to be a group.
The above query gets all existing, unique groups of "iva", "total" and calculates sum("importe") for each group.
WHERE("importe">1000) filters the data before they are grouped and aggregated, HAVING("summatoria")>1000 filters the grouped and aggregated data.
un saludo....
y gracias....
http://www.1keydata.com/sql/sqlgroupby.html
SUM returns one number for the entire column. Any field you append to your aggregated "summatoria" needs to do the same trick (by means of SUM, COUNT, AVG, MIN, MAX,etc.) or it has to be a group.
The above query gets all existing, unique groups of "iva", "total" and calculates sum("importe") for each group.
WHERE("importe">1000) filters the data before they are grouped and aggregated, HAVING("summatoria")>1000 filters the grouped and aggregated data.
un saludo....
y gracias....
Windows Xp, OpenOffice 3.1.0
Re: [Solved] error en consulta en la instrucción que genera
creo debería ser:pepo_kactus escribió: SELECT SUM( "importe" ) AS "sumatoria", "iva", "total" FROM "totales"
SELECT SUM( "importe" ) AS "sumatoria", "iva", "total" FROM "totales" GROUP BY "iva","total"
para utilizar una función agreaga p.e. SUM() necesariamente hay que agrupar, por lo que los campos del SELECT que no utilizan una función agregada deben ser utilizados para agrupar.
Puedes usar "Subir adjunto" en Respuesta rápida - Editor Completo - Pestaña Subir adjunto
Apache OpenOffice 4, LibreOffice (Win10x64)
Apache OpenOffice 4, LibreOffice (Win10x64)