/ / sql sum y group dando más de una fila - mysql, sql

sql sum y group dando más de una fila - mysql, sql

Estoy usando esta consulta para obtener un valor total único:

SELECT SUM(`contact_awards`.`amount`) AS amount
FROM (`contact_awards`)
WHERE
`contact_awards`.`gift_award_id` IN (1)
AND `created` BETWEEN "2013-05-05" AND "2014-04-01"
GROUP
BY `contact_awards`.`amount`

Sin embargo, cuando se ejecuta, produce dos filas que contienen amount campo:

500
1000

¿Por qué no se ejecuta una sola fila con suma 1500 ?

Gracias por tu ayuda

Respuestas

3 para la respuesta № 1

eliminar el GROUP BY cláusula,

SELECT SUM(contact_awards.amount) AS amount
FROM   contact_awards
WHERE  contact_awards.gift_award_id IN (1)
AND created BETWEEN "2013-05-05" AND "2014-04-01"

La razón por la que está obteniendo dos registros es porque hay dos valores diferentes de contact_awards.amount siendo agrupados.


2 para la respuesta № 2

Cuando usas group by, los resultados van a estar separados por su cláusula de agrupación. Si desea que se resuma una sola fila, simplemente elimine el group by al final de su consulta.