比较postgresql中的日期

时间:2015-08-06 08:29:53

标签: sql postgresql

我有以下查询:

SELECT array_to_string(array( SELECT birthday from users where userid>10), ',' ) as birthdaylist

这会生成以下数据:

birthdaylist
text
"2015-08-02,2015-08-09"

我想要的是得到这个结果:

("02/Aug/2015","09/Aug/2015")

我阅读了postgresql手册http://www.postgresql.org/docs/8.2/static/functions-formatting.html我看到有一个函数to_date('05 Dec 2000', 'DD Mon YYYY')但它并没有真正帮助我。

我试过了:

Select Array (SELECT birthday from users where userid>10)

这个查询给了我一个数组,但它不是一个文本数组:date[] 我如何获得("02/Aug/2015","09/Aug/2015")

1 个答案:

答案 0 :(得分:3)

您的查询过于复杂。您不需要嵌套的子选择。只需使用您想要的格式进行常规聚合。

select string_agg(to_char(birthday, 'DD Mon YYYY'), ',')
from users 
where userid > 10;

顺便说一下:你不应该阅读完全过时版本的手册(8.2)。请始终使用您所使用版本的手册。