오케이 제목이 상황을 충분히 설명하지 못했습니다. 지금 이것은 내가 그럼 난 두 개의 테이블을 조인 열 CHAR (4) 테이블 조인에서 네 번째 CHAR가 표시되지 않았습니다.
Table1
Columns0, CHAR(20), NOT NULL.
Columns1, CHAR(4), Allow Nulls.
Data : 'ARR '
Table2
Columns0, CHAR(20), NOT NULL.
Columns1, CHAR(4), NOT NULL.
Data : 'ARR '
와 테이블이 , 그것을이다.
'ARRARR '
왜 이런 일이 않는
SELECT (ISNULL(a.Columns1,'') + ISNULL(b.Columns1,'')) AS WhatEver
FROM Table1 a
left join Table2 b on a.Columns0 = b.Columns0
결과는 대신의 'ARR ARR '
으로 표시해야한다, 그것은 나타 납니까?
편집 2012/06/11 :
은 어려움을 겪고 후, 내가 좋아하는 일을 결국 : 나는 올바른 결과 'ARR ARR '
을 얻을 경우에만 그 다음
SELECT ISNULL(CONVERT(CHAR(4),a.Columns1),'') + ISNULL(b.Columns1,'')
하지만 꽤입니다 내 데이터 유형이 CHAR(4)
인지 확인하십시오.
감사들 ..
편집 2012년 8월 6일 :
내가 작업이 (CHAR (4), NULL)에 표 2를 COLUMN 1을 변경하는 것입니다 발견 또 다른 솔루션입니다. 이 ALTER TABLE을 통해 수행 할 수 있습니다 [TABLE_NAME] [COLUMN_NAME] [column_data_type] [널 (null) | null이 아닌]을 수정할
하나의 조건은 내 SOxx1 col2가 ALLOW NULL이고 SOxx2 col2가 NULL이 아님 어떻게 이런 일이 발생할지 확신 할 수 없지만 방금 해결했습니다. 감사 – Robin1990