我正在嘗試構建一個查詢,以小時計算急診室中的患者人數。我有每個患者的到達和離開時間。我試圖建立一個布爾風格的查詢,但它所作的只是使用這個邏輯按小時計算患者人口普查
SELECT MRN,
,CASE WHEN CAST(EDArrival AS TIME) between '00:00:00.000' and '00:59:59.000' then 1 else 0 end as Hour0
,CASE WHEN CAST(EDArrival AS TIME) between '01:00:00.000' and '01:59:59.000' then 1 else 0 end as Hour1
,CASE WHEN CAST(EDArrival AS TIME) between '02:00:00.000' and '02:59:59.000' then 1 else 0 end as Hour2
FROM EDArrivals
WHERE EDArrival「2012-06-01」之間「2013-07-01」
給我按小時抵港我在想也許查詢可能會在每個小時內爲他們在1小時內放置一個1或0的列。我最終希望得到的是在一年中每小時的平均患病率。如果有人能想到更簡單的方法,我將非常感謝幫助。
謝謝
'select count(*)from ... where ... between ... between group by hour(edarrival)',基本上,使用sqlserver特定的時間內容。 –
由於您正在出發時間,並且您希望患者仍處於緊急狀態,爲何不選擇出發時間爲空的患者? – jean
@jean我不能使用這種邏輯,因爲它只會給我那些目前仍在ED中的患者。我需要建立這樣一個回顧性工具,可用於確定ED何時最滿。 – AndrewMo