【发布时间】:2014-07-28 23:21:08
【问题描述】:
我想制作一份报告,告诉所有在过去 75 天左右没有接到电话的客户。我的专栏如下。
Customer# Customer_Name Phone_Number Call_Date Salesman
呼叫日期会提取客户被呼叫的任何时间的日期。
这是我当前的查询。
select customer_no
,Customer_name
,Phone_number
,max(Call_Date) as Call_date
,Salesman
from salescalls
where call_date <= current_date - 75
我遇到的问题是,它会拉动每一位客户,并使用 75 天或更长时间前的最后一次呼叫。
例如,当最后通话日期为 2014 年 6 月 4 日时,它会拉起号码并将通话日期列为 2013 年 11 月 10 日。
它不应该列出过去 75 天内被呼叫的客户。所以为了防止这种情况,我试图在 where 子句中做到这一点。
Where max(call_date) <= current_date - 75
但这只是给我一个错误:
aggregates not allowed in WHERE clause
【问题讨论】:
-
这么多重复。即使从今天开始。
-
我可能应该放在那里,我到处寻找,但找不到可行的答案。
-
从今天开始的骗子甚至几乎拥有相同的头衔。看看被骗的 cmets。
-
你提出了一个体面的问题,就是这样。已删除反对票。不过,这仍然是一个骗局,我们尽量避免。
标签: sql postgresql aggregate-functions where