【发布时间】:2017-11-16 22:50:07
【问题描述】:
我正试图解决这个问题。我被要求创建一个报告,显示我们数据库中的回头客。
其中一项要求是,如果客户在特定日期有超过 1 个订单,则仅计为 1 个。 然后,如果他们有超过 1 个购买日期,他们就会算作回头客。
在这里搜索,我发现这适用于查找在特定购买日期购买超过 1 次的客户。
SELECT DISTINCT s.[CustomerName], s.PurchaseDate
FROM Reports.vw_Repeat s WHERE s.PurchaseDate <> ''
GROUP BY s.[CustomerName] , cast(s.PurchaseDate as date)
HAVING COUNT(*) > 1;
此 MSSQL 代码的工作方式与应有的一样,它显示了在同一日期购买了 1 次以上的客户。 我的问题是最好的方法是将它加入另一个查询(这是我需要帮助的地方),然后显示一个完整的重复客户列表,其中将返回超过 1 次购买的客户。
我正在使用 MSSQL。任何帮助将不胜感激。
【问题讨论】:
-
您要加入的另一个查询在哪里?
-
抱歉,我没有写出查询。我假设我必须将第一个查询包含在另一个查询中才能完成我正在尝试做的事情。我还是新手,不知道进行第二个查询的最佳途径。
-
删除不同的,它在该查询中没有任何用处
标签: sql-server repeat customer