J'ai récemment appris la disponibilité de la IIF
fonction dans SQL Server 2012. J'utilise toujours imbriqué CASE
dans mes requêtes. Je veux savoir le but exact de l' IIF
instruction et quand devrions-nous préférer utiliser IIF
sur CASE
Statement dans la requête. J'utilise principalement imbriqué CASE
dans mes requêtes.
Merci pour toutes les contributions.
sql-server
sql-server-2012
case
iif
néophyte
la source
la source
Réponses:
IIF
est le même queCASE WHEN <Condition> THEN <true part> ELSE <false part> END
. Le plan de requête sera le même. Il s'agit peut-être du «sucre syntaxique» tel qu'initialement mis en œuvre.CASE est portable sur toutes les plates-formes SQL alors que IIF est spécifique à SQL SERVER 2012+.
la source
IIF est une fonction T-SQL non standard. Il a été ajouté à SQL SERVER 2012, de sorte qu'Access puisse migrer vers SQL Server sans refactoriser les IIF en CASE au préalable. Une fois que la base de données Access est entièrement migrée vers SQL Server, vous pouvez refactoriser.
la source