2011-09-14 51 views
2

我有這樣的查詢:如何在postgresql查詢中選擇日期間隔?

select d.id from days as d JOIN tv_programs AS t ON (d.tv_program_id = t.id) WHERE d.date=? AND t.type=0 ORDER BY d.date, t.date DESC OFFSET 1; 

則返回1個選擇日期(Date類型)的數據,但我想從STARTDATE至結束日期得到的值,例如,我想用一個查詢做哪些做這樣的事情:

select d.id from days as d JOIN tv_programs AS t ON (d.tv_program_id = t.id) WHERE d.date='2011-09-01' AND t.type=0 ORDER BY d.date, t.date DESC OFFSET 1; 
select d.id from days as d JOIN tv_programs AS t ON (d.tv_program_id = t.id) WHERE d.date='2011-09-02' AND t.type=0 ORDER BY d.date, t.date DESC OFFSET 1; 
select d.id from days as d JOIN tv_programs AS t ON (d.tv_program_id = t.id) WHERE d.date='2011-09-03' AND t.type=0 ORDER BY d.date, t.date DESC OFFSET 1; 

這是可能的嗎?

+1

是...... d.date是什麼類型? – Yahia

+0

它是Date類型。 –

回答

3

... where d.date between '2011-09-01' and '2011-09-04'應該工作。

+0

很好,謝謝。 –