Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 按月份返回新用户数_Sql - Fatal编程技术网

Sql 按月份返回新用户数

Sql 按月份返回新用户数,sql,Sql,表订单包含以下列 订单id、订单日期、发货日期、发货模式、客户id、国家/地区、数量 我只需要密码。这是我的作品 SELECT order_date, COUNT (Customer_Id) As new_usercount FROM ( SELECT Customer_Id, DATE(MIN(Order_Date)) AS order_date FROM Orders GROUP BY Customer_Id ) AS ch GROUP BY order_date

订单包含以下列 订单id、订单日期、发货日期、发货模式、客户id、国家/地区、数量

我只需要密码。这是我的作品

SELECT order_date, COUNT (Customer_Id) As new_usercount
FROM (
    SELECT Customer_Id, DATE(MIN(Order_Date)) AS order_date
    FROM Orders
    GROUP BY Customer_Id
) AS ch
GROUP BY order_date

谢谢

您的查询几乎是正确的。
在汇总每个客户的最小订单日期后,必须按日期的年份和月份分组,而不是按日期分组:

SELECT YEAR(order_date) year, 
       MONTH(order_date) month, 
       COUNT(*) new_usercount 
FROM ( 
  SELECT Customer_Id, MIN(Order_Date) order_date 
  FROM Orders 
  GROUP BY Customer_Id 
) t 
GROUP BY YEAR(order_date), MONTH(order_date)

您的查询几乎正确。
在汇总每个客户的最小订单日期后,必须按日期的年份和月份分组,而不是按日期分组:

SELECT YEAR(order_date) year, 
       MONTH(order_date) month, 
       COUNT(*) new_usercount 
FROM ( 
  SELECT Customer_Id, MIN(Order_Date) order_date 
  FROM Orders 
  GROUP BY Customer_Id 
) t 
GROUP BY YEAR(order_date), MONTH(order_date)

您如何确定谁是“新用户”?如果第一个订单是在当前月份和年份?你应该提供一些样本数据,以及你得到的结果与预期结果一致。看看你如何确定谁是“新用户”?如果第一个订单是在当前月份和年份?你应该提供一些样本数据,以及你得到的结果与预期结果一致。看,谢谢!只是为了100%:我不需要将新的用户计数与AS一起放入?还有,在“欣赏”之后的“t”的功能是什么<代码>作为是可选的
t
是子查询的别名。根据您的代码,我假设您正在使用MySql,并且在MySql中,所有子查询都必须使用别名。太好了!谢谢你,福布斯。亲切的问候,谢谢!只是为了100%:我不需要将新的用户计数与AS一起放入?还有,在“欣赏”之后的“t”的功能是什么<代码>作为是可选的
t
是子查询的别名。根据您的代码,我假设您正在使用MySql,并且在MySql中,所有子查询都必须使用别名。太好了!谢谢你,福布斯。亲切问候,,