我正在使用以下查詢返回所有存儲的用戶出生日期的年齡(以年爲單位)。如果我基本能夠計算年齡,那麼我就可以生成一份報告。該查詢是矮胖的,因此使我很難理解我會怎麼做,特別是因爲聚合函數不能被分配別名。從存儲的DOB中推導出的某個年齡的返回人數
Select
DateDiff(YEAR, dob, CURRENT_TIMESTAMP) -
CASE WHEN
DATEADD(year,DateDiff(YEAR, dob, CURRENT_TIMESTAMP),CURRENT_TIMESTAMP)
> CURRENT_TIMESTAMP
THEN 1
ELSE 0 END as ageYears
from [database].[dbo].[users]
使用distinct
關鍵字我可以返回年齡組,而不是實例,但我怎麼會加入這些用count
?
這個輸出將是理想的:
age | numUsers
18 | 1
19 | 3
20 | 7
21 | 1
22 | 9
23 | 2
打倒我吧。好工作。 –