我需要幫助來為下面這個輸出創建一個查詢。正如你在下面的資料集中所看到的,我想把病人的記錄放在一個單獨的行中,并提供所有的細節
。例如,Shahin Adam只需要有1條單一的記錄,將第1號和第2號劑量的細節與每個劑量的日期結合在一起
。預期輸出
感謝您的幫助
uj5u.com熱心網友回復:
我想你只是想要條件聚合:
select lastname, firstname,
max(case when dosenumber = 1 then dosenumber end) as dosenumber_1,
max(case when dosenumber = 1 then timeofevent end) as timeofevent_1,
max(case when dosenumber = 2 then dosenumber end) as dosenumber_2,
max(case when dosenumber = 2 then timeofevent end) as timeofevent_2
from t
group by lastname, firstname。
uj5u.com熱心網友回復:
按照期望的輸出結果部分,只顯示2條名字以A開頭的記錄,這就是為什么這里啟用where子句。如果需要所有的病人資訊,那么就禁用where子句。
SELECT PatientLastName, PatientFirstName
, MAX(CASE WHENDoseNumber = 1 THEN DoseNumber ELSE NULL END) 劑量數1
, MAX(CASE WHENDoseNumber = 1 THEN TimeOfEvent ELSE NULL END) 時間事件1
, MAX(CASE WHEN DoseNumber = 2 THEN DoseNumber ELSE NULL END) 劑量Number2
, MAX(CASE WHENDoseNumber = 2 THEN TimeOfEvent ELSE NULL END) 時間事件2
FROM table_name
WHERE PatientFirstName like 'A%'/span>
GROUP BY PatientLastName, PatientFirstName
ORDER BY PatientFirstName;
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/314787.html
標籤:


