2015-08-31 56 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