Извините за мой плохой английский.Как отобразить результат нескольких строк в одной строке в 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 –