我需要將一列時間戳 (date_col) 更改為 yyyy-01-01。date_col 中的一年一月的第一天
例子:
actual desired
2021-04-02 00:00:00.000 2021-01-01
1966-05-04 00:00:00.000 1966-01-01
uj5u.com熱心網友回復:
請使用 date_trunc
select date_trunc(year,'2021-04-02 00:00:00.000'::date);
--------------------------------------------------
| DATE_TRUNC(YEAR,'2021-04-02 00:00:00.000'::DATE) |
|--------------------------------------------------|
| 2021-01-01 |
--------------------------------------------------
uj5u.com熱心網友回復:
一種方法可能是,我認為@Pankaj 展示的更好
select column1::timestamp as col1, year(col1) as "YEAR"
,year || '-' || '01'|| '-' ||'01' as dt
,to_date(dt,'YYYY-MM-DD')
from values
('2021-04-02 00:00:00.000') ,
('1966-05-04 00:00:00.000')
uj5u.com熱心網友回復:
像這樣更新...
update my_table
set date_field = date_from_parts(extract(year from date_field), 1, 1)
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/448960.html