2012-02-07 4 views
3

firstName 및 lastName 열이있는 테이블이 있다고 가정 해 보겠습니다. INSERT INTO newTable SELECT firstName, lastName FROM oldTable을 수행 할 수 있습니까? 결과 테이블에 두 개의 열이있는 대신 두 개의 열을 연결 하시겠습니까?SQL INSERT INTO SELECT, varchar 열 결합

마찬가지로, 정적 문자열과 열을 연결할 수 있습니까?

답변

6

예,

이 이름 및 성 열뿐만 아니라

사이의 편집에 정적 문자열 ' '을 concatinates
SELECT LTRIM(RTRIM(ISNULL(firstName, '') + ' ' + ISNULL(lastName, ''))) FROM oldTable 

할 것 : 그래서 firstName을 또는이 lastName가 null의 경우 LTRIM(RTRIM(...))을 추가, 결과에는 정적 ' ' 문자열 결과로 선행 또는 후행 공백이 없습니다.

+3

는 NULL' 값 그래도 ... '뭔가와 연결 NULL' 다른'NULL' –

+0

완벽한을 산출'조심, 내가 그걸 할 수 있는지 몰랐다. Darren – carpat

+0

@DarrenKopp 감사합니다. nulls을 고려하여 편집 해 주셔서 감사합니다. –

2

네, 그리고 정적 문자열이 있거나 변수가 당신이 말할 수있는 경우 :

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;