列type(0または1)、amount(int)のテーブルがあります
2つのパラメータを返すものをクエリする必要があります:タイプ=1の合計金額とタイプ=0の合計金額
2つのクエリ:
SELECT SUM(amount) AS income FROM table WHERE type = 0;
SELECT SUM(amount) AS expense FROM table WHERE type = 1;
しかし、1つのクエリのみを使用してこれらのパラメータを返すことはできますか?
SELECT SUM(amount), IF(type=0, 'income', 'expense') AS type
FROM table
GROUP BY type
SELECT sum(case when type = 0
then amount
else 0
end) AS income,
sum(case when type = 1
then amount
else 0
end) AS expense
FROM table