2010-10-20 73 views
0
RCustomerId GiftRegistryId ContactId DateActive DateExpire 
----------- -------------- --------- ---------- ---------- 
62   66    225   NULL   2010-10-11 
62   66    228   2010-10-13 NULL 
62   67    229   NULL   2010-10-20 
62   67    230   2010-10-21 NULL 
62   68    232   NULL   NULL 

要檢查今天的日期是> = dateexpire如何在sql server中找到contactid?

如果是> =我要檢查同一giftregistryid dateactive日期wheather爲> =與否。

如果geater等於我不需要顯示contactid否則顯示contactid。
如:

 Consider today date id 2010-10-11 

     result is Contactid 
        228 
        229 
+1

這個問題很難理解 - 請自己閱讀並解決。 – Oded 2010-10-20 18:43:28

+2

226從哪裏輸出?你的意思是225?如果是這樣,它與GiftRegistryId 67有什麼關係? – gbn 2010-10-20 18:48:42

回答

0

你可以嘗試:

SELECT ContactId FROM TableName 
WHERE GetDate() BETWEEN DateActive AND DateExpire 

你一定得使用ISNULL爲空日期(我包括它周圍捏造的事情,但是,根據你的問題,我不知道如何處理NULL值)。

0

我想你想要的是

SELECT 
    contactid 
FROM 
    yourtable 
WHERE 
    dateactive >= '2010-10-11' OR dateactive IS NULL AND 
    dateexpire <= '2010-10-11' OR dateexpire IS NULL 

但它確實很難理解,不好意思。