2017-02-23 63 views
0
SET @QUERY = 'SELECT ID, CODE, (FIRST_NAME+" "+ISNULL(MIDDLE_NAME,'')+" "+SUR_NAME) AS NAME FROM [Common].[CM_Personnel_MF] 

上述查询执行显示如下错误:无效的列名称'上串联列

Invalid column name ' '.

如果我改变查询:

SET @QUERY = 'SELECT ID, CODE, (FIRST_NAME+' '+ISNULL(MIDDLE_NAME,' ')+' '+SUR_NAME) AS NAME FROM [Common].[CM_Personnel_MF]'; 

获得不正确的语法如下所示

Incorrect syntax near '+ISNULL(MIDDLE_NAME,'.

回答

1

您需要转义'with''(使用双单引号)

SET @QUERY = 'SELECT ID, CODE, (FIRST_NAME+'' ''+ISNULL(MIDDLE_NAME,'''')+'' ''+SUR_NAME) AS NAME FROM [Common].[CM_Personnel_MF]