MySQL并集和和二表
我需要一个显示当天记录和显示每列总和的解决方案,到目前为止,我有一个查询来显示工会记录,如:MySQL并集和和二表,mysql,sum,union-all,Mysql,Sum,Union All,我需要一个显示当天记录和显示每列总和的解决方案,到目前为止,我有一个查询来显示工会记录,如: SELECT datetime, remarks, void, invoice, reload, redeem FROM ( SELECT datetime, remarks, '' void, '' invoice, points_intake reload, '' redeem, 1 ord FROM bp
SELECT
datetime,
remarks,
void,
invoice,
reload,
redeem
FROM
(
SELECT datetime, remarks, '' void, '' invoice, points_intake reload, '' redeem, 1 ord
FROM bpp_intake_logs
WHERE outlet = 'KUL' AND DATE(datetime) = '2017-06-13'
UNION ALL
SELECT datetime, remarks, void, invoice, '', points_consume, 2
FROM bpp_consume_logs
WHERE outlet = 'KUL' AND DATE(datetime) = '2017-06-13'
) q
ORDER BY datetime DESC, ord
结果表如下所示:
datetime | remarks | void | invoice | reload | redeem |
2017-06-13 15:53:31 | Point restored - void XY203460 | | | 10 | |
2017-06-13 15:37:27 | reload / top-up credit | | | 10 | |
2017-06-13 15:35:56 | redeem from VIP card | 1 | XY203460 | | 10 |
2017-06-13 15:16:03 | redeem from VIP card | | XY203456 | | 5 |
现在,我想在其所属列的底部添加一个单元格,对每个reload
和receive
进行求和,如下所示:
datetime | remarks | void | invoice | reload | redeem |
2017-06-13 15:53:31 | Point restored - void XY203460 | | | 10 | |
2017-06-13 15:37:27 | reload / top-up credit | | | 10 | |
2017-06-13 15:35:56 | redeem from VIP card | 1 | XY203460 | | 10 |
2017-06-13 15:16:03 | redeem from VIP card | | XY203456 | | 5 |
| 20 | 15 |
如图所示,总和20和15分配在底部单元格中
用这种方法可以得到结果吗?也许这就是你想要的
SELECT
datetime,
remarks,
void,
invoice,
SUM(reload),
SUM(redeem)
FROM
(
SELECT datetime, remarks, '' void, '' invoice, points_intake reload, '' redeem, 1 ord
FROM bpp_intake_logs
WHERE outlet = 'KUL' AND DATE(datetime) = '2017-06-13'
UNION ALL
SELECT datetime, remarks, void, invoice, '', points_consume, 2
FROM bpp_consume_logs
WHERE outlet = 'KUL' AND DATE(datetime) = '2017-06-13'
) q
GROUP BY datetime desc, remarks asc, void asc, invoice asc with rollup
ORDER BY datetime DESC, ord
也许这就是你要找的
SELECT
datetime,
remarks,
void,
invoice,
SUM(reload),
SUM(redeem)
FROM
(
SELECT datetime, remarks, '' void, '' invoice, points_intake reload, '' redeem, 1 ord
FROM bpp_intake_logs
WHERE outlet = 'KUL' AND DATE(datetime) = '2017-06-13'
UNION ALL
SELECT datetime, remarks, void, invoice, '', points_consume, 2
FROM bpp_consume_logs
WHERE outlet = 'KUL' AND DATE(datetime) = '2017-06-13'
) q
GROUP BY datetime desc, remarks asc, void asc, invoice asc with rollup
ORDER BY datetime DESC, ord
您不能在一个查询中完成此操作。但您可以使用PHPY之类的编程语言计算重新加载和赎回的总价值。您不能在一个查询中完成这项工作。但您可以使用诸如PHP之类的编程语言计算重新加载和赎回的总值。有关了解汇总,请参阅:::有关了解汇总,请参阅:::