Bagaimana cara mengatur variabel ke hasil query pilih tanpa menggunakan prosedur tersimpan?
Saya ingin melakukan sesuatu seperti: OOdate DATETIME
SET OOdate = Select OO.Date
FROM OLAP.OutageHours as OO
WHERE OO.OutageID = 1
Kemudian saya ingin menggunakan OOdate dalam query ini:
SELECT COUNT(FF.HALID) from Outages.FaultsInOutages as OFIO
INNER join Faults.Faults as FF ON FF.HALID = OFIO.HALID
WHERE CONVERT(VARCHAR(10),OO.Date,126) = CONVERT(VARCHAR(10),FF.FaultDate,126))
AND
OFIO.OutageID = 1
Anda bisa menggunakan sesuatu seperti
SET @cnt = (SELECT COUNT(*) FROM User)
atau
SELECT @cnt = (COUNT(*) FROM User)
Agar ini bekerja, SELECT harus mengembalikan satu kolom dan satu hasil dan pernyataan SELECT harus dalam tanda kurung.
Edit: Sudahkah Anda mencoba sesuatu seperti ini?
DECLARE @OOdate DATETIME
SET @OOdate = Select OO.Date from OLAP.OutageHours as OO where OO.OutageID = 1
Select COUNT(FF.HALID)
from Outages.FaultsInOutages as OFIO
inner join Faults.Faults as FF
ON FF.HALID = OFIO.HALID
WHERE @OODate = FF.FaultDate
AND OFIO.OutageID = 1
Apa maksud Anda sebenarnya? Apakah Anda ingin menggunakan kembali hasil kueri Anda untuk kueri lain?
Dalam hal ini, mengapa anda tidak menggabungkan kedua kueri, dengan membuat pencarian kueri kedua di dalam hasil kueri pertama (SELECT xxx in (SELECT yyy...)