SQL求一视图,行连接列~~~~~~~~~在线等``
表 A
id BrandID typeID
1 1 4
2 3 5
表B
ID NAME
1 DELL
2 联想
3 AMD
4 内存
5 硬盘
想要结果
1 DELL 内存
2 AMD 硬盘
就是把表A中 BrandID typeID列的值用表B中对应的NAME换掉.
------解决方案--------------------select o.ID,q.Name,q.Name from A o,B p,B q where o.BrandID=p.ID and o.typeID=q.ID
------解决方案-------------------- SELECT A.id, BrandName = B1.NAME, typeName = B2.Name
FROM A, B B1, B B2
WHERE A.BrandID = B.ID
AND A.typeID = B.ID
------解决方案--------------------select a.id,b1.name as Brand,b2.name as type
from a,b b1,b b2
where a.BrandID=b1.BrandID and
a.typeID=b2.typeID
------解决方案--------------------select
A.ID,
max(case A.BrandID when B.ID then B.Name end),
max(case A.typeID when B.ID then B.Name end)
from
A,B
group by
A.ID,A.BrandID,A.typeID