MySQL получить сумму php

Столбец sql - trans_value содержит как положительное, так и отрицательное значение.

поэтому я пытаюсь выяснить, как мне отложить сумму положительного значения и отрицательного значения, чтобы я мог вычислить, сколько суммы положительного и сколько суммы отрицательного.

так что в итоге я могу минусовать оба, плюс - минус.

редактировать, я забыл упомянуть перед этим

в той же таблице также есть идентификатор продукта имени столбца, поэтому

product_id | trans_value
1               200
1               250
1               -150
2               500
2               -300
3               200
3               -150

поэтому мне нужно получить сумму идентификатора продукта 1, отобразить его, затем для 2, 3 и так далее.

Благодарность


person damien    schedule 08.07.2010    source источник


Ответы (2)


Если вы просто хотите увидеть общее количество для каждого product_id

SELECT product_id, SUM(trans_value)
FROM table
GROUP BY product_id
ORDER BY product_id

Если вам действительно нужны положительные и отрицательные значения отдельно:

SELECT SUM(IF(trans_value<0;trans_value;0)) neg, SUM(IF(trans_value>0;trans_value;0)) pos
FROM table

Поместит сумму отрицательных значений в neg, сумму положительных значений в pos. pos + neg будет общая сумма.

person Konerak    schedule 08.07.2010
comment
привет, извините, я забыл упомянуть ранее, я отредактировал свой пост, проверьте, пожалуйста, спасибо - person damien; 08.07.2010
comment
можно ли придумать метод php? - person damien; 08.07.2010
comment
эээ, pos - neg это не общая сумма, общая сумма pos + neg. - person Mark Elliot; 09.07.2010

person    schedule
comment
Это только суммирует положительные моменты. ОП тоже попросил негативы. - person Konerak; 08.07.2010