我需要选择在特定时间范围内“活跃”的所有事件。
这就是我的表格的样子
+---------------+------------------+----------------+
| cmde_eid | cmde_edate_start | cmde_edate_end |
+---------------+------------------+----------------+
此选择有两个日期,我需要获取在时间范围或部分时间范围内有效的所有事件。
有什么建议吗?
答案 0 :(得分:0)
喜欢这样:
SELECT * FROM events WHERE CURRENT_DATE BETWEEN cmde_edate_start AND cmde_edate_end
答案 1 :(得分:0)
你可以这样做:
SELECT *
FROM table name
WHERE cmde_edate_start > '0000-00-00' AND cmde_edate_end < '0000-00-00'
你也可以在
之间使用MYSQLSELECT *
FROM table name
WHERE (cmde_edate_start BETWEEN '0000-00-00' AND '0000-00-00') AND (cmde_edate_end BETWEEN '0000-00-00' AND '0000-00-00')
http://www.w3schools.com/sql/sql_between.asp
你甚至可以使用两者的混合。这些只是日期之间检查的两个简单示例。