私は以下のSQLを持っています
SELECT SUM(amount) from CustomerPayment where date like '%2013' GROUP BY TYPE
タイプ列には、BANK と CASH の 2 つの選択肢があります。
これらを個別に合計したいと思います。例: 銀行は合計 500 で、現金は 400 です。
ただし、上記の sql はレコードを合計しません。代わりに、銀行と現金のレコードの最初のレコードを返します。なんで?
日付フィールドのデータ型がDate
orのDateTime
場合、LIKE 演算子は機能しません。
日付の比較には、日付関数を使用します。
SELECT SUM(amount)
FROM CustomerPayment
WHERE YEAR(date) = 2013
GROUP BY TYPE
https://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_year
SQLクエリにタイプを追加してみてください。次に、グループ化するタイプの目に見える表現があります。
SELECT SUM(amount), TYPE from CustomerPayment where date like '%2013' GROUP BY TYPE