int PrimaryKey
DateTime Date
int Price
我想這樣做的是通過在開始和結束日期,並獲得一系列
從:
最大日期小於或等於開始除非沒有這樣的日期,在這種情況下,範圍的開始應該是可用的最低日期。
要:
的結束日期。
我的查詢到目前爲止是:
SELECT Date, Price
FROM table1
WHERE Date <= $end
AND Date >=
(
SELECT Date
FROM table1
WHERE Date <= $start
ORDER BY Date DESC
LIMIT 1
)
子查詢得到小於或等於起始值,然後將其用作用於主查詢範圍的低端最大日期。在那裏獲得'UNLESS'條款的任何建議?
例如,給定的日期表:
Jan 1, 2009
Feb 1, 2009
Mar 1, 2009
Apr 1, 2009
我想$start='Feb 18, 2009'
和$end='Apr 30, 2009'
查詢返回三行2月1日,3月1日,4月1日(2009年2月1日是全國最大的日期即小於或等於$ start)。
但是,如果我提供$start='Dec 1, 2009'
和$end='Apr 30, 2009'
我希望所有四行返回(沒有日期小於或等於$開始,所以範圍內的最低日開始)
現在測試這個,coalesce看起來確實是我需要的。 – Johrn 2009-08-28 15:41:03
一旦我停止按照整數傳遞日期,就像夢一樣工作。<感謝一百萬! – Johrn 2009-08-28 15:50:51