我寫了一個查詢來從表中的一列中獲取值,並在基於where子句的數據網格視圖中的兩列中表示它們。以下是該查詢,SQL查詢中的問題
Select ElectricityMachinePanelDetails.MachineDescription AS "Machine Name",
case when (ReadingCategoryID = 'RC001' AND ReadingTypesDetails.ReadingTypeID = 'RT001')
then ReadingValue
end as [Last Day Meter Reading],
case when (ReadingCategoryID = 'RC001' AND ReadingTypesDetails.ReadingTypeID = 'RT002')
then ReadingValue
end as [Current Day Meter Reading]
from ElectricityDailyMeterReadingDetails
INNER JOIN ElectricityMachinePanelDetails on ElectricityMachinePanelDetails.MachinePanelID = ElectricityDailyMeterReadingDetails.MachinePanelID
INNER JOIN ReadingTypesDetails ON ElectricityDailyMeterReadingDetails.ReadingTypeID = ReadingTypesDetails.ReadingTypeID
WHERE ReadingCategoryID = 'RC001' AND ReadingTypesDetails.ReadingTypeID = 'RT001'
基於讀類型ID的列改變爲一個例子
值..如果我使用ReadingTypesDetails.ReadingTypeID = 'RT002'
Machine Name Last Day Meter Reading Current Day Meter Reading
Transformer 01 NULL 60.000000
Transformer 02 NULL 60.000000
Transformer 03 NULL 80.000000
如果我使用ReadingTypesDetails.ReadingTypeID ='RT001'
Machine Name Last Day Meter Reading Current Day Meter Reading
Transformer 01 52.000000 NULL
Transformer 02 55.000000 NULL
Transformer 03 70.000000 NULL
* 總是一列顯示爲NULL * ..有人可以幫助我嗎?
刪除 「並ReadingTypesDetails.ReadingTypeID = 'RT001'」,並檢查 – Snehal