好的標題無法正確解釋情況。 現在,這是它, 我有列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 '
表然後我連接兩個表在一起。
SELECT (ISNULL(a.Columns1,'') + ISNULL(b.Columns1,'')) AS WhatEver
FROM Table1 a
left join Table2 b on a.Columns0 = b.Columns0
結果應該顯示爲'ARR ARR '
,而不是這一點,它表現爲'ARRARR '
爲什麼會出現這種情況?
編輯2012/06/11:
掙扎後,我結束了做這樣的事情:
SELECT ISNULL(CONVERT(CHAR(4),a.Columns1),'') + ISNULL(b.Columns1,'')
那麼只有我得到正確的結果'ARR ARR '
但我很在數據庫中確定我的數據類型是CHAR(4)
。
感謝球員..
EDIT 2012/08/06:
另一種解決方案,我發現工作是第1列改變表2(CHAR(4),NULL)。 這可以通過 ALTER TABLE來完成[表名]修改[列名] [column_data_type] [空| NOT NULL]
一個條件是我的SOxx1 col2是允許NULL,而SOxx2 col2不是NULL 我也不知道這將如何發生,但我剛解決它。謝謝 – Robin1990