更改 PostgreSQL 查询结果的日期格式

Ami*_*rad 1 sql postgresql date

我有以下查询

select substring(listDate from '............$') as v_end_date,
substring(listDate from '^...............') as v_start_date
Run Code Online (Sandbox Code Playgroud)

现在 listDate 值可以是这样的

select substring('06 Jan 2014 to 12 Jan 2014,
 13 Jan 2014 to 19 Jan 2014,
 20 Jan 2014 to 26 Jan 2014
' from '............$') as v_end_date,
substring('06 Jan 2014 to 12 Jan 2014,
 13 Jan 2014 to 19 Jan 2014,
 20 Jan 2014 to 26 Jan 2014
' from '^............') as v_start_date
Run Code Online (Sandbox Code Playgroud)

以上查询结果为

V_END_DATE  V_START_DATE
26 Jan 2014 06 Jan 2014
Run Code Online (Sandbox Code Playgroud)

现在我需要有v_end_datev_start_date格式 likeyyyy-mm-dd和 like Mon 06 Jan 2014

Erw*_*ter 5

将您的字符串转换为实际的字符串dateto_date()使用它to_char()来获得几乎任何您喜欢的格式。

演示:

SELECT to_char(day, 'YYYY-MM-DD')     AS format1
     , to_char(day, 'Dy DD Mon YYYY') AS format2 
FROM   (SELECT to_date('26 Jan 2014', 'DD Mon YYYY') AS day) sub
Run Code Online (Sandbox Code Playgroud)

  • 受到推崇的。切勿以字符串格式存储日期,您无法用它来计算日期和时间。 (2认同)