亲爱的专业人员,
我需要在几个日期范围内获取一些不同的Client#的列表,但我不确定100%如何处理。
清单1:
我需要与众不同的(ClientNum),并且最近的EditDate到今天和之前都是5岁。
清单2:
我需要具有从今天4岁到今天5岁之间的最新EditDate的不重复(ClientNum)。
清单3:
我需要具有从今天的3岁到今天的4岁之间的最新EditDate的unique(ClientNum)。
现在,我得到了以下结果,并且得到了结果,我只是不知道自己是否得到了我认为应该得到的东西。
清单1查询:
SELECT DISTINCT(ClientNum)
FROM Table
WHERE EditDate < DATEADD(year,-5,GETDATE())
清单2查询:
SELECT DISTINCT(ClientNum)
FROM Table
WHERE EditDate BETWEEN DATEADD(year,-5,GETDATE()) AND DATEADD(year,-4,GETDATE())
清单2查询:
SELECT DISTINCT(ClientNum)
FROM Table
WHERE EditDate BETWEEN DATEADD(year,-4,GETDATE()) AND DATEADD(year,-3,GETDATE())
这是解决这个问题的正确方法吗?还是我错过了什么?
请指教。
-缺口
清单1
SELECT ClientNum, max(EditDate) as maxEditDate
FROM Table
GROUP BY ClientNum
HAVING maxEditDate < DATEADD(year,-5,GETDATE());
清单2
SELECT ClientNum, max(EditDate) as maxEditDate
FROM Table
GROUP BY ClientNum
HAVING maxEditDate BETWEEN DATEADD(year,-5,GETDATE()) AND DATEADD(year,-4,GETDATE());
清单3
SELECT ClientNum, max(EditDate) as maxEditDate
FROM Table
GROUP BY ClientNum
HAVING maxEditDate BETWEEN DATEADD(year,-4,GETDATE()) AND DATEADD(year,-3,GETDATE());
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句