SQL插入到SELECT中,合并varchar列

SQL插入到SELECT中,合并varchar列,sql,sql-server,Sql,Sql Server,假设我有一个包含firstName和lastName列的表。是否可以将插入到新表SELECT firstName,lastName FROM oldTable,但不是在结果表中有两列,而是将这两列连接起来 类似地,可以将列与静态字符串连接起来吗?可以 SELECT LTRIM(RTRIM(ISNULL(firstName, '') + ' ' + ISNULL(lastName, ''))) FROM oldTable 这包含firstName和lastName列,以及介于两者之间的静态字符串

假设我有一个包含firstName和lastName列的表。是否可以将
插入到新表SELECT firstName,lastName FROM oldTable
,但不是在结果表中有两列,而是将这两列连接起来

类似地,可以将列与静态字符串连接起来吗?

可以

SELECT LTRIM(RTRIM(ISNULL(firstName, '') + ' ' + ISNULL(lastName, ''))) FROM oldTable
这包含firstName和lastName列,以及介于两者之间的静态字符串
'


编辑:添加了
LTRIM(RTRIM(…)
,因此如果firstName或lastName为null,则静态
''
字符串的结果不会有前导或尾随空格。

是,如果有静态字符串或变量,则可以说:

DECLARE @variable VARCHAR(255);

SET @variable = 'some string';

INSERT INTO dbo.NewTable(column name) 
SELECT 
  COALESCE(firstname, '') + ' ' + COALESCE(lastname, '') + @variable + 'static string' 
FROM dbo.OldTable;

但是要小心
NULL
NULL
与其他东西连接会产生
NULL
完美,我不知道我能做到。谢谢你的提醒,达伦