我正在使用 H2 嵌入式数据库进行桌面应用程序开发,H2 数据库具有与 SQL 函数相同的功能。但我被困在一个地方使用ROLLUPH2 数据库中的功能。ROLLUP或者H2 数据库中有其他替代品吗?
我的查询需求是:
我想在 H2 DATBASE 中显示我的数据,如下所示
Customer Product Price
-------------------------------
Suryam Shampo 100
Rubber 150
Glass 250
Total 500----->Total
Raghu Bottel 60
Biscuit 180
Total 240----->Total
Grand Total 740----->Grand Total
Run Code Online (Sandbox Code Playgroud)
请有人帮助我
我在 H2 文档中找不到任何提及支持ROLLUPwithGROUP BY查询的内容。好消息是您可以使用GROUP BY一系列联合来模拟此功能。
SELECT Customer, Product, Price
FROM yourTable
UNION ALL
SELECT Customer, 'Total', SUM(Price)
FROM yourTable
GROUP BY Customer
UNION ALL
SELECT '', 'Grand Total', SUM(Price)
FROM yourTable
ORDER BY CASE WHEN Customer = '' THEN 1 ELSE 0 END,
Customer,
CASE WHEN Product = 'Total' THEN 1 ELSE 0 END,
Product;
Run Code Online (Sandbox Code Playgroud)
输出:
这是 MySQL 演示的链接。UNION与您的数据库不同,但 H2 中和的行为CASE应该与 MySQL 中相同。
| 归档时间: |
|
| 查看次数: |
809 次 |
| 最近记录: |