我需要帮助在SQL 2008中创建一个视图,该视图将创建一个记录,该记录由两个表中的数据组成,其中一个表包含多个记录。
Table 1 contains field A, B Table 2 contains field A,B,1 A,B,2 A,B,3 A,B,4 A,B,5
我正在寻找
的结果视图A,B,1,2,3,4,5
答案 0 :(得分:0)
一种选择是使用STUFF
和FOR XML
:
SELECT t.col1, t.col2,
STUFF((
select ',' + cast(t2.id as varchar)
from yourothertable t2
where t.col1 = t2.col1 and t.col2 = t2.col2
for xml path('')
), 1, 1, '')
from yourtable t
如果要组合3列,使用'+'
运算符就足够了。
SELECT t.col1 + ',' + t.col2 +
(
select ',' + cast(t2.id as varchar)
from yourothertable t2
where t.col1 = t2.col1 and t.col2 = t2.col2
for xml path('')
)
from yourtable t;