目前我正在执行以下操作来计算列中不同语言的付款方式:
$sql = "SELECT `payment`, count(*) as number FROM Test GROUP BY `payment` ";
结果:
Cash 2
Bar 4
Credit-Card 5
Kreditkarte 8
Invoice 12
Rechnung 27
知道如何在一个 SQL 查询中对不同语言的相同支付方式求和,以获得以下内容,但显然没有括号中的部分:
Bar 6 (sum of Cash and Bar)
Kreditkarte 13 (sum of Credit-Card and Kreditkarte)
Rechnung 39 (sum of Invoice and Rechnung)
表名:测试
payment
===========
Cash
Bar
Credit-Card
Kreditkarte
Invoice
Rechnung
最佳答案
使用 CASE
表达式将 'Cash'
更改为 'Bar'
, 'Credit-Card'
到 'Kreditkarte'
和 'Invoice'
到 'Rechnung'
并按其结果分组:
SELECT CASE payment
WHEN 'Cash' THEN 'Bar'
WHEN 'Credit-Card' THEN 'Kreditkarte'
WHEN 'Invoice' THEN 'Rechnung'
ELSE payment
END AS payment,
COUNT(*) AS number
FROM Test
GROUP BY 1;
关于mysql - 在一个 SQL 查询中对同一列中相同类型的不同值求和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72593568/