다음은 데이터베이스의 스냅입니다.계산 된 열은 문자열로 표시되어야합니다.
col1과 col2는 모두 int로 선언됩니다. 다음과 같이
는내 ComputedColumn 현재 ..., 열 1과 2에 추가하는 대신이의
col1 col2 ComputedColumn
1 2 3
4 1 5
, 열은 1, 2합니다 (
includimg에 가입해야 내 ComputedColumn -에 문자를 '' 중간)을 다음과 같이 입력하십시오.
col1 col2 ComputedColumn
1 2 1-2
4 1 4-1
올바른 구문은 무엇입니까?
NVARCHAR (MAX)가 과용이라고 생각합니다. INT 값이므로 최대 길이가 있으며 이상한 유니 코드 문자를 포함 할 수 없습니다 !!! 그래서 varchar (11) 괜찮을 것이다. –
@KM 좋은 점, 특히'VARCHAR' 대'NVARCHAR'. 길이는 더 적은 관심사입니다. 행의 전체 길이가 허용되는 행 크기 (4K?)를 초과하지 않는 한, MAX를 사용하는 것과 사용자가 제안하는 11 사이에는 실제적인 차이가 없을 것입니다. – Dathan
이것이 PERSISTED가 아닌 계산 된 열인 경우이 열에서 수행하는 SELECT 수에 따라이 계산을 수백만 회 수행 할 수 있습니다. (MAX) vs (n) 열에서 문자열 연산을 수행 할 때 약간의 오버 헤드가 있다고 생각합니다. 왜 기회가 걸릴 int는 varchar (11)보다 클 수 없습니다. –