0
我有以下查詢。我需要一個看起來像這樣的輸出PostgreSQL數據類型格式化函數
ea_month case ea_year zone_id
January 0 2013 4001
February 0 2013 4002
March 1 2013 4001
January 0 2014 4001
February 0 2014 4001
March 1 2014 4001
February 0 2014 4002
March 1 2014 4002
SELECT ea_month,CASE WHEN ea_month = (SELECT to_char(now(), 'Month')) THEN 1 ELSE 0 END,ea_year,zone_id FROM staging_ea.stg_circle_zone_billedamount_rollup
在我的表中我有我的價值爲1月,2月,3月的形式ea_month。
運行上面的查詢時,我得到的結果集後是這樣的:
ea_month case ea_year zone_id
January 0 2013 4001
February 0 2013 4002
March 0 2013 4001
January 0 2014 4001
February 0 2014 4001
March 0 2014 4001
February 0 2014 4002
March 0 2014 4002
任何人都可以給我建議我要去哪裏錯了?它用於PostgreSQL查詢。
你不需要選擇在'CASE'這可以通過對結果應用
trim()
或格式掩碼使用FM
修改固定聲明。 '當ea_month = to_char(now(),'Month')then ...'應該這樣做。當然,這受環境設置的影響:'to_char()'函數返回的月份名稱取決於當前用戶的區域設置。 –我已經嘗試過沒有SELECT,但沒有效果。 –
你確定'to_char()'實際上是以英文而不是其他語言返回''January'嗎? SELECT to_char(now(),'Month')'自己返回什麼? –