gpt4 book ai didi

mysql - 将多个 MySQL 查询连接在一起

转载 作者:行者123 更新时间:2023-11-29 07:37:23 25 4
gpt4 key购买 nike

我刚开始学习 MySQL,我在遇到问题时从这个网站学到了很多东西,但我遇到了困难 1. 我想为所有借记卡付款创建一个日志我的 3 家商店,按日期分组,每家商店 1 列,最后是总计列。根据我在此处找到的信息,我能够单独创建查询,但不确定如何将它们组合成 1 个输出。

查询以查找所有商店的总数:

SELECT DATE(s.sale_time) AS Date, SUM(p.payment_amount) AS Total
FROM pos_sales_payments p
JOIN pos_sales s on p.sale_id = s.sale_id
WHERE p.payment_type = "Debit Card" AND s.sale_time > "2018-01-01 00:00:00" AND s.deleted = "0"
GROUP BY date(s.sale_time)
ORDER BY s.sale_time

查询以查找商店 1 的总数:

SELECT DATE(s.sale_time) AS Date, SUM(p.payment_amount) AS Total
FROM pos_sales_payments p
JOIN pos_sales s on p.sale_id = s.sale_id
WHERE p.payment_type = "Debit Card" AND s.sale_time > "2018-01-01 00:00:00" AND s.deleted = "0" AND s.location_id = "1"
GROUP BY date(s.sale_time)
ORDER BY s.sale_time

最佳答案

只需使用条件聚合:

SELECT DATE(s.sale_time) AS Date, SUM(p.payment_amount) AS Total,
SUM(CASE WHEN s.location_id = 1 THEN p.payment_amount ELSE 0 END) as Total_1
FROM pos_sales_payments p JOIN
pos_sales s
ON p.sale_id = s.sale_id
WHERE p.payment_type = 'Debit Card' AND
s.sale_time >= '2018-01-01' AND
s.deleted = '0'
GROUP BY date(s.sale_time)
ORDER BY s.sale_time;

关于mysql - 将多个 MySQL 查询连接在一起,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48139652/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com