Comment utiliser Si d'Autre Condition dans la Clause where en SQL Server pour les Colonnes de Date?

Je veux utiliser si d'autre dans la condition where de la Date Coulmns. En fait ce que je veux faire est:

J'ai un tableau, qui, ayant deux colonnes, CreatedDate et LastModifiedDate. Maintenant ce que je veux vérifier dans la procédure Stockée est:

si LastUpdateDate est null, alors il va vérifier pour CreatedDate.

Voici ma requête:

SELECT isnull(SSA.UpdateDateTime, 
       isnull(SSA.CreateDateTime,'')) as LastUpdateAnswerDateTime 
from SI_SurveySiteAnswer SSA 
WHERE SSA.UpdateDateTime IS NOT NULL

Il y a un autre numéro de table dans les jointures, je suis juste coller la requête requise uniquement. comment puis-je aller pour le vérifier, je suis totalement confus.

Merci de m'aider..

Mise à JOUR:

J'ai écris le code ci-dessous, s'il vous plaît confirmer si c'est la bonne façon de l'utiliser Si dans où

SELECT isnull(SSA.UpdateDateTime,
       isnull(SSA.CreateDateTime,'')) as LastUpdateAnswerDateTime
from SI_SurveySiteAnswer SSA 
WHERE  SSA.UpdateDateTime = ISNULL(SSA.UpdateDateTime,SSA.CreateDateTime)

Je pense que je n'ai pas pu faire mon exigence très clair au premier rendez-vous, laissez-moi vous expliquer ici..

j'ai une question de l'enquête table de réponse, je veux envoyer un email de notification si la question a déjà été répondu, maintenant, la réponse peut répondit d'un seul coup, dans ce cas createddate aura de la valeur de la updateddatetime,
Deuxième cas est:
la réponse est en cours de mise à jour dans la deuxième aller, alors j'ai besoin de vérifier pour la LastUpdateDateTime..

C'est ce que je veux faire dans la requête.

  • peut-être le besoin d'u à l'utilisation de fusionner
  • pouvez-vous donner un exemple.. s'il vous plaît
  • Je n'ai pas votre logique u ont utilisé WHERE SSA.UpdateDateTime IS NOT NULL alors qu'est-ce que le besoin de NULL check pour les mêmes dans select
  • je veux obtenir la valeur de date par défaut si la valeur est null pour la colonne, même je sais que j'ai appliqué dans la condition where. juste pour une logique du truc..
  • Vous dites que vous voulez vérifier CreatedDate si LastUpdateDate est nul, mais qu'est-ce que vous voulez vérifier? Le code que vous avez écrit dans la where n'a pas de sens, parce que si UpdatedateTime n'est pas null, alors il va certainement être égal à lui-même (si vous avez un mannequin comparaison équivalente à 1=1), et si c'est null, alors il ne peut pas être égal à rien.
  • merci de lire ma mise à jour de question, j'ai ajouté la description de mon exigence
  • Allez-vous comparer ce CreateDate ou UpdateDateTime en vous stockez de la procédure paramètre ou si vous voulez juste pour vérifier le champ contient une valeur.
  • voulez juste pour vérifier si la colonne a de la valeur .. reste logique est mis en œuvre dans le Code...
  • Si la logique est mise en œuvre dans le code, il suffit de sélectionner les deux colonnes et le tri dans le code...
  • Cela voudrait dire que vous récupère tous les enregistrements dans la table. Vous souhaitez filtrer le résultat dans la base de données, pas dans le code.
  • Si une réponse n'a pas été fourni comment exister comme une ligne dans la table de réponse à tout? c'est à dire NULLE date de création ==> la ligne n'a pas été créé

InformationsquelleAutor Ram Singh | 2014-11-10