我已经从我查询了我的结果是多行:SQL合并多行到一个多列
例如,表“地址”:
Street | Number | City
----------------------
A1 | A2 | A3
B1 | B2 | B3
其实我要的是:
Address1_Street | Address1_Number | Address1_City | Address2_Street | Address2_Number | Address2_City
------------------------------------------------------------------------------------------------------
A1 | A2 | A3 | B1 | B2 | B3
任何人谁知道我可以做到这一点?
我已经成功地得到了这一点,现在(对不起,使用等栏目,在一个上面就是一个例子,但我猜你会得到点):
select distinct
a.ID,
a.Name,
ca1.NameLine1 as Address1_NameLine1,
ca2.NameLine1 as Address2_NameLine1
from
dbo.Accounts a,
dbo.Addresses ca1,
dbo.Addresses ca2
where
(a.ID = ca1.AccountID AND a.ID = ca2.AccountID)
AND (a.Name = 'TEST')
AND (ca1.ID <> ca2.ID)
但我仍然得到2行... Address1与Address2交换。谁知道如何才能得到一个?谢谢!
是有确定哪些行应该一起捣碎,或者你只是想在地址表中的每一行上'Address'的关键? – ninesided 2013-03-08 09:00:46
在许多RDBMS中,无法为任意数量的列执行此操作。 – 2013-03-08 09:04:38
有我返回的MAX 2地址 – RubenHerman 2013-03-08 09:20:04