日期:2014-05-17  浏览次数:20872 次

这个问题不知道杂问 关于SQL的 求助大神
SQL语句如下
with table1 as(
select oi.*,ci.CustomerName,jcp.ProductName,oid.ControlID,oid.ControlValue,sa.FromHospital as faqiyiyuan from DD_OrderInfo oi
left join KH_CustomerInfo ci on ci.ID=oi.ClientID
left join DD_OrderItemDefault oid on oid.OrderID=oi.ID
left join KH_ClientProduct cp on cp.ID=oi.ClientProductID
left join JG_CustomerProduct jcp on jcp.ID=cp.CustomerOrgProID
left join HZ_ServerAskPRO sap on sap.Id=cp.ServerAskId
left join HZ_ServerAsk sa on sa.Id=sap.ServerAskId
where oi.Audit=2 and (oid.ControlID='Hospital' or oid.ControlID='Preferredexperts' or oid.ControlID='Optionsexperts')




select * from table1


数据结构


我想把ControlID 下面的3个值弄成一条数据 因为一个订单对应这三条 这三条的值 是别的表的ID 要联合显示名字 该如何去查呢 这个问题我都不知道咋问。。。。


------解决方案--------------------
有個思路給你,你看行不行,用行轉列
------解决方案--------------------
我有两个方法
一,把那个列单独摘出!,然后把那个列包括主键,单独查询
二,列转行