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

更改PostgreSQL查询结果的日期格式,sql,postgresql,date,Sql,Postgresql,Date,我有以下疑问 select substring(listDate from '............$') as v_end_date, substring(listDate from '^...............') as v_start_date 现在listDate值可以是 select substring('06 Jan 2014 to 12 Jan 2014, 13 Jan 2014 to 19 Jan 2014, 20 Jan 2014 to 26 Jan 2014 '

我有以下疑问

select substring(listDate from '............$') as v_end_date,
substring(listDate from '^...............') as v_start_date
现在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
上面的查询结果是

V_END_DATE  V_START_DATE
26 Jan 2014 06 Jan 2014
现在我需要有
v_end_date
v_start_date
格式,比如
yyyy-mm-dd
等等
2014年1月6日星期一

将您的字符串转换为实际格式,并使用它可以获得您喜欢的任何格式

演示:


将您的字符串转换为实际格式,并使用它获得您喜欢的任何格式

演示:


推荐。切勿以字符串格式存储日期,您无法使用该格式计算日期和时间。建议使用。永远不要以字符串格式存储日期,你不能用它来计算日期和时间。
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