Postgresql 如何获取过去6个月内一个月的第一个日期?查询超时

Postgresql 如何获取过去6个月内一个月的第一个日期?查询超时,postgresql,Postgresql,下面的解决方案根本没有运行,正在超时。有没有更好的方法来写这篇文章,因为我认为这不仅效率低下,而且是不正确的 我想记录过去6个月的所有日期,从6个月前那个月的第一个日期开始,如果有意义的话 SELECT date_trunc('month', n.datefield) FROM table n where n.datefield >= date_trunc('month', CURRENT_DATE - interval '5 months') 只要date\u trunc('mont

下面的解决方案根本没有运行,正在超时。有没有更好的方法来写这篇文章,因为我认为这不仅效率低下,而且是不正确的

我想记录过去6个月的所有日期,从6个月前那个月的第一个日期开始,如果有意义的话

SELECT
date_trunc('month', n.datefield)
FROM
table n 
where
n.datefield >= date_trunc('month', CURRENT_DATE - interval '5 months')
只要
date\u trunc('month',CURRENT\u date-interval'5 months')
给出了正确的日期,查询就是正确的。至于绩效-请参阅此标签信息:“记录过去6个月的所有日期”是什么意思?是否要在该时间间隔内查找表
n
中的所有行,仅查找表中该时间段内的不同日期列表,还是查找其他内容?