我有一个通用的搜索,我在其中查找一周中不同日期的平均价格。问题是我不确定如何要求一个奇怪的范围。1-7可以工作,(星期一-星期日),但是如果用户把星期天传给星期二……ie 7-2它不能工作。
1-7 (1,2,3,4,5,6,7) 7-2 (7,1,2)
等。
除了这两者之外,我还能如何传递一个更智能的范围呢?
SELECT item_id, DAYOFWEEK(bookdate) as date, bookdate, AVG(price) AS price
FROM `availables` WHERE (item_id = 16 and DAYOFWEEK(bookdate) BETWEEN 2 AND 7)
GROUP BY DAYOFWEEK(bookdate)
发布于 2009-10-20 23:23:01
也许您正在寻找的是IN语法:
SELECT item_id, DAYOFWEEK(bookdate) as date, bookdate, AVG(price) AS price
FROM `availables` WHERE (item_id = 16 and DAYOFWEEK(bookdate) IN (7,1,2))
GROUP BY DAYOFWEEK(bookdate)
发布于 2009-10-20 15:23:06
使用' in‘子句,例如:(1,2,7)中的星期(Bookdate)
这也允许不连续日期的灵活性(例如,仅选择星期一和星期五的记录)
https://stackoverflow.com/questions/1595405
复制相似问题