当前位置: 首页 > 面试题库 >

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

淳于俊迈
2023-03-14
问题内容

任何人都可以发布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

我需要一个SQL查询,该查询将计算并显示每天的总金额。 因此,对于2009年2月3日,总计为699.98

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

如果使用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)


 类似资料:
  • 问题内容: 我有两个 带有列的表: 并带有列: 我需要返回CustomerID(CID),每个客户的订单数以及所有订单的每个客户的总金额。 到目前为止,我有两个单独的查询。一个给了我客户订单的数量。 另一个给了我总销售额。我在合并它们时遇到了麻烦… 我正在Access 2010中执行此操作。 问题答案: 您将在其他SQL引擎中使用: 不幸的是,哪个Access不支持。相反,您可以先获取订单金额,然

  • 说明 微信支付查询订单SDK。 官方文档:https://pay.weixin.qq.com/wiki/doc/api/micropay.php?chapter=9_2 类 请求参数类 请求参数 类名:\Yurun\PaySDK\Weixin\OrderQuery\Request 属性 名称 类型 说明 $_apiMethod string 接口名称 $transaction_id string

  • 说明 支付宝境外到店支付-订单查询 官方文档:https://global.alipay.com/service/external_QR_Code/28 类 请求参数类 请求参数 类名:\Yurun\PaySDK\AlipayCrossBorder\InStore\Query\Request 属性 名称 类型 说明 $service string 接口名称 $partner_trans_id st

  • 请求地址 https://api.es.xiaojukeji.com/river/Approval/getOrder 返回数据格式 JSON 请求类型 GET 请求参数 参数名称 数据类型 必选 说明 client_id string yes 申请应用时分配的AppKey access_token string yes 授权后的access token timestamp string yes 当

  • 3.2 查询订单 3.2.1 描述 通过调用该接口为指定订单号的订单明细 3.2.2 请求地址 地址:https://api.bokecs.com/recharge/order/get?orderNo=15 3.2.3 请求方式 GET 3.2.4 请求参数 1) 请求入参 元素名称 是否必须 元素描述 orderNo 是 订单号 2) 请求出参 { "code": "", "message":

  • 问题内容: 我在编写sql以从表中获取可用房间时遇到问题。我的表结构如下。 表:预订 桌子:房间 包含有关房间的详细信息,该表的主键是room_id,它具有1至10个房间,共10个房间。 我的问题是我想知道这些房间在2012年9月14日6:00 pm至21-09-2012 9:00 am之间可用,这意味着我应该只将room_id的结果作为1,3,5,7,8 ,9,10。 有人可以帮我编写SQL来从