2

我有一张这样的桌子:

CustID     VisitTime
 1         2012-12-31 11:59
 1         2013-1-1 00:00
 1         2013-1-1 00:05
 2         2013-1-1 00:20
 2         2013-1-1 10:00
 3         2013-1-1 11:40

Jan 1st 12:00AM现在,我想选择从到访问该网站的那些新客户Jan 31st 11:59pm

例如:cust ID 1也在 中访问过Dec,因此cust ID 1不应选择。只有23应该被选中。

如何使用 合并此逻辑t-sql

4

2 回答 2

5
SELECt t.CustID
FROM Table1 t
GROUP BY t.CustID
HAVING MIN(VisitTime) >='01/01/2013 00:00:00' AND MIN(VisitTime) < '02/01/2013 00:00:00'
--same test on MAX(vistTime) if needed

SqlFiddle

于 2013-08-19T10:05:43.007 回答
0
SELECT DISTINCT CUSTID
FROM T as T1
WHERE VisitTime between '2013-01-01 00:00' AND '2013-01-31 23:59'
AND NOT EXISTS (SELECT T.CustID FROM T 
                       WHERE T.CustId=T1.CustId and VisitTime < '2013-01-01')
于 2013-08-19T10:08:15.123 回答