我在 SQL Server 中有一個表:
CREATE TABLE healthRegistration
(
ID uniqueidentifier PRIMARY KEY,
RegisterDateTime DateTime NOT NULL,
RUFeelingWell Bool NOT NULL
);
的RegisterDateTime是日期和時間,用戶創建的暫存器和RUFeelingWell是一個布林值。
我想創建一個回傳 3 列的查詢:注冊日期,該日期 RUFeelingWell = False 的條目計數,該日期 RUFeelingWell = True 的條目計數
我怎樣才能做到這一點?
uj5u.com熱心網友回復:
SELECT CAST(T.RegisterDateTime AS DATE)REGISTERDATE,
SUM
(
CASE
WHEN T.RUFeelingWell =1 THEN 1
ELSE 0
END
)AS TRUE_RECORDS,
SUM
( CASE
WHEN T.RUFeelingWell =0 THEN 1
ELSE 0
END
)AS FALSE_RECORDS
FROM healthRegistration AS T
GROUP BY CAST(T.RegisterDateTime AS DATE)
uj5u.com熱心網友回復:
試試這個查詢:
Select
Convert(char(8), RegisterDateTime, 112),
Sum(Case RUFeelingWell When 1 Then 1 Else 0 End) As wellnos,
Sum(Case RUFeelingWell When 0 Then 1 Else 0 End) As notwellnos
From healthRegistration
Group By Convert(char(8), RegisterDateTime, 112)
Order By Convert(char(8), RegisterDateTime, 112)
此處 Convert(char(8), RegisterDateTime, 112) 以 YYYYMMDD 格式給出日期,以便將一天的條目相加。布林值在資料庫中存盤為 1 和 0
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/328795.html
標籤:sql-server 查询语句
上一篇:使用SQL高效查詢節點和邊
