SQL SERVER: Vérifier si la variable est nulle et ensuite affecter déclaration pour la Clause where
Je suis en train de réaliser quelque chose comme ci-dessous dans la clause where en sql.
if (@zipCode ==null)
begin
([Portal].[dbo].[Address].Position.Filter(@radiusBuff) = 1)
end
else if(@zipCode !=null)
begin
([Portal].[dbo].[Address].PostalCode=@zipCode )
end
J'ai essayé le suivant:
WHERE ((@zipCode IS NOT NULL AND ([Portal].[dbo].[Address].PostalCode=@zipCode)) OR (@zipCode IS NULL AND ([Portal].[dbo].[Address].Position.Filter(@radiusBuff) = 1)))
qui est faux. N'importe qui peut aider dans l'élaboration de l'énoncé exact. Merci!
Alors, pourquoi est-ce mal?, quels sont les résultats que vous attendiez?
[Portail].[dbo].[Adresse].Position.Filtre censé être une fonction?
Votre condition semble être bien...quel est le problème ou la question avez-vous??
Quand je suis manuellement en passant code postal nulle, il n'est pas de retourner un résultat. Mais quand je suis en remplacement de l'ensemble de l'énoncé ([Portail].[dbo].[Adresse].Position.Filtre(@radiusBuff) = 1)) sa fonctionne bien. Je ne sais pas pourquoi ça se passe comme ça. Quand je suis en briser les déclarations et l'exécution de separemment avec les valeurs définies, ils travaillent beaucoup.
[Portail].[dbo].[Adresse].Position.Filtre censé être une fonction?
Votre condition semble être bien...quel est le problème ou la question avez-vous??
Quand je suis manuellement en passant code postal nulle, il n'est pas de retourner un résultat. Mais quand je suis en remplacement de l'ensemble de l'énoncé ([Portail].[dbo].[Adresse].Position.Filtre(@radiusBuff) = 1)) sa fonctionne bien. Je ne sais pas pourquoi ça se passe comme ça. Quand je suis en briser les déclarations et l'exécution de separemment avec les valeurs définies, ils travaillent beaucoup.
OriginalL'auteur Krishh | 2013-04-18
Vous devez vous connecter pour publier un commentaire.
Isnull() la syntaxe est construit dans pour ce genre de chose.
Pour votre exemple, gardez à l'esprit que vous pouvez modifier l'étendue d'être encore un autre où le prédicat d'une autre variable pour des complexes de la logique booléenne. Seul inconvénient est que vous devez jeter différemment si vous avez besoin d'examiner pour un type de données différent. Donc, si j'ai ajouter une autre ligne, mais souhaitez spécifier int de 8 ET aussi la référence de texte similaire à "répéter" je peux le faire avec une référence à nouveau à la 'isnull" de la première variable c'est pourtant un tout autre résultat de type de données pour une autre référence à un champ différent.
OriginalL'auteur djangojazz
est nulle est la syntaxe que j'utilise pour de telles choses, quand FUSIONNENT est d'aucune aide.
Essayer:
OriginalL'auteur marceljg
Essayer une instruction case
OriginalL'auteur Travis
est la valeur null peut être utilisé pour vérifier si les données nulle est à venir à partir d'une requête comme dans l'exemple suivant
OriginalL'auteur Raj Kumar