IIF语句中的Microsoft SQL动态查询列名

时间:2013-12-31 17:11:41

标签: sql sql-server dynamic

@ColumnName NVARCHAR(MAX)

@ColumnName = 'Column1'

IIF (Table1.' + @ColumnName + 'IS NULL, 0, Table1.' + @ColumnName + ') as Result

在动态查询中,我试图找出所选字段的值是否为空。动态SQL查询在所有其他子查询中使用@ColumnName工作正常,但是我必须拉出这一行才能使它工作。

现在,如果我将此查询作为标准SQL语句运行并对列名进行硬编码,则可以正常工作。

1 个答案:

答案 0 :(得分:1)

你忘了一个空间

@ColumnName + 'IS NULL
               ^-----------------here