如何从POSTGRESQL中的DATE中提取年份

问题描述 投票:34回答:4

日期是'YYYY-MM-DD'文本格式,现在我需要提取必须是数字的年份部分。我需要在单步中完成此转换,因为我需要在其他应用程序中使用,我无法创建新变量。

TO_DATE(t0.AESTDTC,'YYYY-MM-DD'),'YYYY-MM-DD'与此我能够转换为日期,但现在我需要从这个日期一步提取一年?谁能帮我?

postgresql date datetime
4个回答
63
投票

尝试

select date_part('year', your_column) from your_table;

要么

select extract(year from your_column) from your_table;

5
投票

答案是;

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

2
投票

从中选择一个,其中:my_dateyyyy-MM-dd格式的字符串输入参数:

SELECT EXTRACT(YEAR FROM CAST(:my_date AS DATE));

要么

SELECT DATE_PART('year', CAST(:my_date AS DATE));

因为输入参数可能存在冲突,所以最好使用CAST而不是::


-4
投票

你也可以在较新版本的sql中使用这样的,

'Qazxswpoi'

© www.soinside.com 2019 - 2024. All rights reserved.