SQL 서버에서 쿼리의 텍스트를 연결하려면 어떻게 해야 합니까?
다음 SQL:
SELECT notes + 'SomeText'
FROM NotesTable a
오류 발생:
데이터 형식 nvarchar 및 텍스트가 추가 연산자에서 호환되지 않습니다.
유일한 방법은 텍스트 필드를 nvarchar 필드로 변환하는 것입니다.
Select Cast(notes as nvarchar(4000)) + 'SomeText'
From NotesTable a
그렇지 않으면, 저는 당신의 애플리케이션에서 연결을 하는 것을 제안합니다.
NULL 값도 고려할 수 있습니다.예제에서 열 노트의 값이 null이면 결과 값이 NULL이 됩니다.Null 값이 빈 문자열로 작동하도록 하려면(응답이 'SomeText'로 표시되도록) IsNull 함수를 사용합니다.
Select IsNull(Cast(notes as nvarchar(4000)),'') + 'SomeText' From NotesTable a
SQL Server 2005 이상을 사용하는 경우, Notes 필드의 데이터 크기에 따라 문자열이 잘릴 수 있는 특정 길이로 캐스팅하는 대신 nvarchar(max)로 캐스팅하는 것을 고려할 수 있습니다.
Select Cast(notes as nvarchar(max)) + 'SomeText' From NotesTable a
문자열 유형을 연결하려면 문자열 유형을 동일하게 명시적으로 캐스팅해야 합니다. 이 경우 'SomeText'(N'Some) 앞에 'N'을 추가하면 문제를 해결할 수 있습니다.Text'). 그래도 안 되면 Cast('SomeText'를 nvarchar(8)로 사용합니다.
다른 옵션은 CONCAT 명령입니다.
SELECT CONCAT(MyTable.TextColumn, 'Text') FROM MyTable
SQL Server 2005 이상을 사용하는 경우 테이블 정의에서 NVARCHAR(MAX)로 전환하는 것이 좋습니다. SQL Server 2000의 TEXT, NTEXT 및 IMAGE 데이터 유형은 이후 버전의 SQL Server에서 더 이상 사용되지 않습니다. SQL Server 2005는 데이터 유형과 역호환성을 제공하지만 VARCHAR(MAX)를 사용해야 합니다.대신 NVARCHAR(MAX) 및 VARBINARY(MAX)를 사용합니다.
언급URL : https://stackoverflow.com/questions/54334/how-do-i-concatenate-text-in-a-query-in-sql-server
'itsource' 카테고리의 다른 글
가장 간단한 RGB 이미지 형식은 무엇입니까? (0) | 2023.07.01 |
---|---|
iOS 11의 앱에 자동 푸시가 제공되지 않음 (0) | 2023.07.01 |
숫자 열거형을 사용하여 유형 스크립트 '기록 <> (0) | 2023.07.01 |
"경로를 업데이트하는 동시에 분기로 전환할 수 없음" (0) | 2023.07.01 |
열에 고유한 것을 사용하고 다른 열에 대해 순서를 지정하면 오류가 발생합니다. (0) | 2023.07.01 |