對不起,我英語不好。如何在SQL中的一行顯示多行結果?
我得到了一些結果。你可以在SS中看到。
我的查詢:
SELECT TransferOrderDate=Siparisler.datescheduled,
ProductTransferDate=UrunTransfer.daterealized,
FirmName=Bayi.firmname,
PlateOfTruck=UrunTransfer.plate,
DriverOfTruck=Surucu.name,
LatOfTruck=TankerKonum.lat,
LngOfTruck=TankerKonum.lng,
SpeedOfTruck=TankerKonum.speed,
LastUpdate=TankerKonum.readtime,
PrintID=UrunTransfer.printoutid
FROM producttransfer AS UrunTransfer
JOIN transferorder AS Siparisler
ON Siparisler.oid = UrunTransfer.transferorderid
JOIN dealer AS Bayi
ON Bayi.oid = Siparisler.dealerid
JOIN driver AS Surucu
ON Surucu.oid = Siparisler.driverid
JOIN devcocom_admin.tankerlocation AS TankerKonum
ON TankerKonum.tankerid = Siparisler.tankerid
WHERE UrunTransfer.daterealized > Dateadd(hour, -24, Getdate())
AND TankerKonum.oid IN (SELECT Max(TankerKonum.oid)
FROM devcocom_admin.tankerlocation AS
TankerKonum
GROUP BY TankerKonum.tankerid)
輸出是這樣的:
但
此查詢結果有3種不同的經銷商。但它有相同的truck,lat,lng,speed
等
在卷軸一truck
工作一個或兩個或三個dealer
。 我想在同一行顯示所有結果。
我怎樣才能改變結果我的查詢是這樣的:
TDName1:TransferDate for FirmName1
TDName2:TransferDate for FirmName2
TDName3:TransferDate for FirmName3
PDName1 : ProductDate for FirmaName1
PDName2 : ProductDate for FirmaName2
PDName3 : ProductDate for FirmaName3
你可以看看使用PIVOT這裏描述http://stackoverflow.com/questions/10428993/understanding-pivot-function-in-t-sql和這裏http://stackoverflow.com/questions/24470/sql -server-pivot-examples或http://stackoverflow.com/questions/9830960/how-to-pivot-table-with-t-sql – Kane
嘗試使用公用表表達式(CTE)。 樣品實施例是在這裏:[點擊這裏] [1] [1]:http://stackoverflow.com/questions/14274942/sql-server-cte-and-recursion-example –