gpt4 book ai didi

mysql - 结合两个订单查询得到结果

转载 作者:行者123 更新时间:2023-11-29 01:35:54 25 4
gpt4 key购买 nike

我有两个问题:

SELECT COUNT(*) as adet, MONTHNAME(date_created) as monthname
FROM orders
WHERE YEAR(date_created) = 2017
GROUP BY MONTH(date_created)

返回这个结果

adet monthname 
----------------
17 January
24 February
45 March
40 April

和另一个查询:

SELECT COUNT(*) as adet, seller_id
FROM orders
WHERE YEAR(date_created) = 2017
GROUP BY seller_id

返回这个结果:

adet seller_id
---------------
120 20
120 21
500 22
400 23

我如何结合这两个查询来获得这样的结果:

adet month seller_id
--------------------
-09- -Jan- --20--
-05- -Fab- --20--
-05- -Mar- --20--
...
-05- -jan- --21--
-04- -Fab- --21--
...
-05- -jan- --22--
-04- -Fab- --22--

最佳答案

你可以试试

 SELECT COUNT(*) adet, LAST_DAY(date_created) month_ending, seller_id
FROM orders
WHERE date_created >= DATE_FORMAT(CURDATE(),'%Y-01-01')
AND date_created < DATE_FORMAT(CURDATE(),'%Y-01-01') + INTERVAL 1 YEAR
GROUP BY LAST_DAY(date_created), seller_id

您为什么要使用看似复杂的东西?因为

  1. 它将在明年运行。
  2. 它将处理不以年份为界的日期范围
  3. 它将能够在您的 date_created 列上使用索引,因此运行速度更快。

关于mysql - 结合两个订单查询得到结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45998986/

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