PORTÉ IIF SUR T-SQL

nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 - 29 sept. 2005 à 22:44
 Utilisateur anonyme - 8 nov. 2006 à 09:11
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/33917-porte-iif-sur-t-sql

Utilisateur anonyme
8 nov. 2006 à 09:11
(Pardon) c'est IIf et non Iff ...
Utilisateur anonyme
8 nov. 2006 à 09:10
Le Iff existe "nativement" en SQL Server
nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
29 sept. 2005 à 22:44
Salut,

dans le cas de sql server
il y a les case qui font la meme chose et en interne.

SELECT title, price,
Budget = CASE price
WHEN price > 20.00 THEN 'Cher'
WHEN price BETWEEN 10.00 AND 19.99 THEN 'Modéré'
WHEN price < 10.00 THEN 'Bon Marché'
ELSE 'Inconnu'
END,
FROM titles

Comme les fonctions le case peut etre mis partout.

Il ne demande pas de fonction supplémentaire.
Et gere plusieurs cas.
Avec le IIF, il faut faire du parenthesage important pour realiser l'exemple si dessus.

Je connais le problème avec les datacolumns expressions, des qu' il y a plus 3 IIF (avec des isnull en plus) dans la condition ca devient complexe.
Rejoignez-nous