Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

PORTÉ IIF SUR T-SQL


Information sur la source

Description

IIF est une fonction fort pratique que les utilisateur d'access peuvent vouloir retrouver sur MS SQL Server.
Voilà donc une fonction Qui fais approximativement la même chose :
 

Source

  • IF EXISTS (SELECT * FROM sysobjects WHERE id = object_id(N'[aspne2u4].[IIF]') AND xtype in (N'FN', N'IF', N'TF'))
  • DROP FUNCTION [aspne2u4].[IIF]
  • GO
  • SET QUOTED_IDENTIFIER ON
  • GO
  • SET ANSI_NULLS OFF
  • GO
  • CREATE FUNCTION IIF
  • (
  • @Condition bit,
  • @TruePart sql_variant,
  • @FalsePart sql_variant
  • )
  • RETURNS sql_variant
  • AS
  • BEGIN
  • IF @Condition = 1
  • RETURN @TruePart
  • RETURN @FalsePart
  • END
  • GO
  • SET QUOTED_IDENTIFIER OFF
  • GO
  • SET ANSI_NULLS ON
  • GO
IF EXISTS (SELECT * FROM sysobjects WHERE id = object_id(N'[aspne2u4].[IIF]') AND xtype in (N'FN', N'IF', N'TF')) 
DROP FUNCTION [aspne2u4].[IIF]
GO

SET QUOTED_IDENTIFIER ON
GO

SET ANSI_NULLS OFF
GO

CREATE FUNCTION IIF
	(
		@Condition bit,
		@TruePart sql_variant,
		@FalsePart sql_variant
	)
RETURNS sql_variant
AS
	BEGIN
		IF @Condition = 1
			RETURN @TruePart
		RETURN @FalsePart
	END
GO

SET QUOTED_IDENTIFIER OFF
GO

SET ANSI_NULLS ON
GO

Conclusion

Pour l'utilisé il faut noté le nom de la base suivie d'un point :

SELECT (NomBase.IIF(1,'Oui','Non')) AS Result
 

Commentaires et avis

signaler à un administrateur
Commentaire de nhervagault le 29/09/2005 22:44:13 administrateur CS

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.

signaler à un administrateur
Commentaire de Scaythe le 08/11/2006 09:10:16

Le Iff existe "nativement" en SQL Server

signaler à un administrateur
Commentaire de Scaythe le 08/11/2006 09:11:14

(Pardon) c'est IIf et non Iff ...

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

création d'une automatique d'une base de données SQLServer [ par MokhTelnet ] bonjourj'ai besoin de savoir comment on peut créer une base de données SQLServer lors de l'installation d'une application.mon client ne veux se charge Commande DOS pour SQLServer 7 [ par MokhTelnet ] y a t'il une commande dos pour SQLSERVER 7 ?(comme la commande sqlplus pour oracle) création automatique d'une base de données SQLServer [ par MokhTelnet ] bonjour j'ai besoin de savoir comment on peut créer une base de données SQLServer lors de l'installation d'une application. mon client ne veux se char Problème SQLSERVER/php [ par LeJulius ] Je travaille actuellement sous SQL SERVER 2000 en lien avec du PHP 4.2.0 Mon problème est le suivant :Mes tables sql contiennent des caractères accent Sauvegarde automatique sqlserver 2000 [ par jojos89 ] Salut a tous,J'ai une base de donn&#233;es en local sur mon pc (avec sqlserver 2000)que je voudrais&nbsp;sauvegard&#233; automatique (tous les soir) s aide pour SQLSERVER [ par nagrom_om ] salut,quelqu'un sait il comment peut on avoir un listing des requetes qui sont pass&#233;es sous SQL Server ??Merci ! ms access - sqlserver - procédurestockée [ par metasky ] bonjour,je suis actuellement sur une appli liant access et sqlserver...quand je consulte mes proc&#233;dures stock&#233;es dans mon projet access les Quel outil pour SqlServer [ par padurand ] Mon site tourne avec une base de donnees Access, et des pages ASP.Je voudrais remplacer Access par SqlServer ... a priori il ne devrait pas y avoir de exporter des donnees de sqlserver 2005 vers access (dts) [ par tenrod ] Salut a tous ,Voila je travail avec une base sql server 2005 et je voudrais exporter le r&#233;sultat d'une requete (a partir de ma base sql server) d SQLServer remplacer Null par 0 [ par BasicInstinct ] Bonjour tout le mondej'ai une requete plutot complexe qui calcule differents totaux selon des dates.lorsque pour un mois donn&#233;, je n'ai pas de va


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,343 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.