SQL CASE语句IS NULL语法错误

时间:2014-08-06 08:02:52

标签: sql ms-access if-statement null case

我对SQL很新,我正在尝试做一个IF语句。这是我的代码,希望您能够找到问题所在。提前致谢!

SELECT [data1].[Last Name]+", "+[First Name] AS Name, 
       [data1].[User ID], 
       (CASE WHEN [Kla] IS null THEN [Nr] ELSE [Kla]+"-"+[Nr] END) AS [Course Code] 
FROM [data1], [data2]
  

语法错误(操作符缺失)'(CASE WHEN [Kla]为null那么[Nr]   ELSE [Kla] +“ - ”+ [Nr] END)'

我在Microsoft Access中从两个从Excel导入的表(data1和data2)中运行它

1 个答案:

答案 0 :(得分:2)

试试这个:

SELECT [data1].[Last Name]+", "+[First Name] AS Name, 
[data1].[User ID], 
IIF(ISNULL([Kla]),[Nr],[Kla]+"-"+[Nr]) AS [Course Code]
FROM [data1], [data2]

AFAIK,您不能在Access的CASE语句中包含NULL检查,因此我建议您改为使用IIF