2015-08-31 82 views
0

2表通過第二表上的ID指針連接。 一個非常古老的數據庫,將內容分割成8000個字符,現在我需要再次合併它們。SQL數據庫2表左連接並按ID連接

[id] ,[headline] ,[body] ,[body2] ,[picname] [picpath] ,[postrelease] ,[postdate]

[id] ,[pr1id] ,[body2]

Pr1id點到主數據表。主數據表的[body2]是一個bool「yes」或Null。

我希望兩個身體在最終輸出中組合成一體。

Select * FROM dbo.pressrelease_tbl m 
LEFT JOIN dbo.pressrelease2_tbl m1 
ON m1.pr1id = m.id 

我被困在concatenate部分。

回答

1

使用CONCAT(),使琴絃確保至少有一個是nvarchar(max)

SELECT m.*, CONCAT(CAST(m.body AS nvarchar(max)), m1.body2) concatBody 
FROM dbo.pressrelease_tbl m 
LEFT JOIN dbo.pressrelease2_tbl m1 
ON m1.pr1id = m.id 
+0

有一個字符串大小限制?它們似乎都在連接過程中被中斷(真正格式不正確的ms字html ..) – vico

+0

Ohh我沒意識到這是你的問題...修改答案。 – Amit

+0

你可以添加)關閉演員(所以我可以標記正確的答案?謝謝! – vico