簡體   English   中英

IIF關鍵字的T-SQL錯誤

[英]T-SQL error with IIF keyword

我使用IIF關鍵字進行以下sql比較

DECLARE @a int, @b int
SET @a = 10
SET @b = 20

BEGIN
   SELECT IIF( @a < @b, 'True', 'False') As Result
END

但是,執行時會出現錯誤

Incorrect syntax near '<'

是什么原因造成的?

如評論中所述, IIF是SQL Server 2012+中的新功能,因此您必須改為使用CASE語句:

DECLARE @a int, @b int
SET @a = 10
SET @b = 20

BEGIN
   SELECT CASE WHEN @a < @b THEN 'True' ELSE 'False' END As Result
END

IIF在VBA中使用,但直到2012年發行版才在SQL Server中可用。 請改用SELECT CASE語句。

DECLARE @a int, @b int
SET @a = 10
SET @b = 20

BEGIN
   SELECT CASE WHEN @a < @b THEN 'True' ELSE 'False' END As Result
END

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM