2016-06-02 4 views

ответ

10

Вычесть один месяц с текущего месяца, а затем «усечь» это к началу этой даты. Как вы не хотите включать строки из «этого» месяца, вам также необходимо добавить условие для этого

SELECT * 
FROM Conference 
WHERE date_start >= date_trunc('month', current_date - interval '1' month) 
    and date_start < date_trunc('month', current_date) 

date_trunc('month', current_date - interval '1' month) возвратит 1-й день предыдущего месяца и date_trunc('month', current_date) вернется в первый день " этот месяц.

+0

Вышеупомянутая информация содержит важную опечатку. Он должен быть «ИНТЕРВАЛ» 1 МЕСЯЦ »и * не *« ИНТЕРВАЛ »1« МЕСЯЦ », который возвращает интервал 0 длины. –

+0

@ ХарриВангберг: нет. 'interval '1' month' отлично действует и делает то же самое, что и' interval '1 month'': http://rextester.com/YDDYL97630 –