我有如下 SELECT 陳述句(不起作用):
SELECT
extract(day from CAST (date as TIMESTAMP) - CAST (birth_date as TIMESTAMP)) / 365.25 as age_norm,
CASE
WHEN age_norm >= 0 AND age_norm <1 THEN '00'
WHEN age_norm >= 1 AND age_norm <5 THEN '01-4'
--etc
END as age_group
FROM foo
有沒有辦法在這里“注入”age_norm查詢中的“變數”?
編輯:
在這里問了一個類似的問題,但這次在SELECT陳述句中增加了一列,這是我要解決的用例
uj5u.com熱心網友回復:
我們可以在子查詢中計算age_norm列,然后在主查詢中age_norm使用。CASE WHEN
SELECT
age_norm,
CASE
WHEN age_norm >= 0 AND age_norm <1 THEN '00'
WHEN age_norm >= 1 AND age_norm <5 THEN '01-4'
--etc
END as age_group
FROM (
SELECT extract(day from CAST (date as TIMESTAMP) - CAST (birth_date as TIMESTAMP)) / 365.25 as age_norm
FROM foo
) t1
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/494074.html
標籤:sql PostgreSQL
上一篇:k8s單master集群部署
下一篇:SQL查找每個主鍵的最大本地計數
