2010-10-20 3 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 

Pour vérifier la date d'aujourd'hui est> = dateexpirecomment trouver contactid dans le serveur sql?

si elle est> = Je veux vérifier même giftregistryid la date dateactive wheather est> = ou non.

si le générateur est alors égal, il n'est pas nécessaire d'afficher le contact sinon le contact est affiché.
Par exemple:

 Consider today date id 2010-10-11 

     result is Contactid 
        228 
        229 
+1

Cette question est très difficile à comprendre - veuillez la lire et la corriger. – Oded

+2

D'où vient le 226 dans la sortie? Voulez-vous dire 225? Si oui, quel est le rapport avec GiftRegistryId 67? – gbn

Répondre

0

Vous pouvez essayer:

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

Vous aurez certainement truquer les choses en utilisant ISNULL pour les dates nulles (je l'inclure, mais, en fonction de votre question , Je ne peux pas dire comment les valeurs NULL sont gérées).

0

Je pense que ce que vous voulez est

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

mais il est vraiment difficile de comprendre, désolé.

Questions connexes