用于查询每天总订单数的SQL查询?

任何人都可以发布SQL查询来计算每天的总订单数吗?

以下是这些列及其在我的数据库中的数据。


order_id    order_placed_date   order_total  

- 1 12/30/2008 12:06:24 AM 2499.99

- 2 2/3/2009 1:57:17 AM 199.99

- 3 2/3/2009 1:58:27 AM 449.99

- 4 5/3/2009 1:58:48 AM 299.99

- 5 6/3/2009 2:00:31 AM 359.94

- 6 6/3/2009 2:01:47 AM 279.97

- 7 6/3/2009 2:02:31 AM 1359.94

- 9 7/1/2009 2:21:18 PM 5099.98

- 10 7/1/2009 2:21:36 PM 2621.97

- 11 7/2/2009 2:22:18 PM 2169.95

- 12 7/3/2009 2:23:29 PM 2249.95

- 13 7/4/2009 2:24:24 PM 5509.95

- 14 7/5/2009 12:15:17 AM 449.99

- 15 7/5/2009 12:18:08 AM 2299.99

- 16 7/5/2009 12:18:28 AM 3999.99

- 17 7/5/2009 12:18:45 AM 1939.99

- 18 7/5/2009 11:58:07 PM 39.99

- 19 7/6/2009 12:00:42 AM 1899.99

- 20 7/6/2009 12:01:00 AM 3999.99

- 21 7/7/2009 12:06:38 AM 199.99

- 22 7/7/2009 12:08:31 AM 1143.97

- 23 7/7/2009 12:09:13 AM 449.99

- 26 7/15/2009 1:30:03 PM 5469

- 27 7/15/2009 2:14:24 PM 329.97

- 28 7/15/2009 6:18:47 PM 5469

- 29 7/15/2009 10:17:36 PM 39.99


例如,2009年2月有2个订单

 - 2    2/3/2009 1:57:17 AM     199.99  

- 3 2/3/2009 1:58:27 AM 449.99

我需要在图表中显示每天的总订单金额

如果使用PHP会更容易做到,那么也要提一下它。


我想澄清一下,我需要本月的每日总金额。我在最初的问题中忘记提及这一点。

因此,我对Peter的查询进行了查询以获取本月的总订单数+每日总金额。

请让我知道它是否需要任何更正,或者有更好更好的方法。


SELECT date(order_placed_date), COUNT(order_id) AS num_orders, SUM(order_total) AS daily_total

FROM orders

WHERE order_placed_date>=date_sub(current_date, INTERVAL 31 DAY)

GROUP BY date(order_placed_date)

回答:

MySQL的date()函数将返回DATEIME或TIMESTAMP值,而没有任何小时/分钟/秒的信息-

这意味着您将精度降低为该值的日期。

因此,您所需要做的就是对该分组进行分组,然后将合计函数添加到正确的列中。

SELECT date(order_placed_date)

, COUNT(id) AS num_orders

, SUM(order_total) AS daily_total

FROM [Table]

GROUP BY date(order_placed_date)

以上是 用于查询每天总订单数的SQL查询? 的全部内容, 来源链接: utcz.com/qa/408606.html

回到顶部