日期是'YYYY-MM-DD'文本格式,现在我需要提取必须是数字的年份部分。我需要在单步中完成此转换,因为我需要在其他应用程序中使用,我无法创建新变量。
TO_DATE(t0.AESTDTC,'YYYY-MM-DD'),'YYYY-MM-DD'与此我能够转换为日期,但现在我需要从这个日期一步提取一年?谁能帮我?
尝试
select date_part('year', your_column) from your_table;
要么
select extract(year from your_column) from your_table;
答案是;
select date_part('year', timestamp '2001-02-16 20:38:40') as year,
date_part('month', timestamp '2001-02-16 20:38:40') as month,
date_part('day', timestamp '2001-02-16 20:38:40') as day,
date_part('hour', timestamp '2001-02-16 20:38:40') as hour,
date_part('minute', timestamp '2001-02-16 20:38:40') as minute
从中选择一个,其中:my_date
是yyyy-MM-dd
格式的字符串输入参数:
SELECT EXTRACT(YEAR FROM CAST(:my_date AS DATE));
要么
SELECT DATE_PART('year', CAST(:my_date AS DATE));
因为输入参数可能存在冲突,所以最好使用CAST
而不是::
。
你也可以在较新版本的sql中使用这样的,
'Qazxswpoi'