2

我正在尝试使用重叠日期进行查询。我的表看起来像这样'

Agenda ID   DateStart               DateEnd
-------------------------------------------------------
1           2012-04-02 08:00:00     2012-04-02 11:30:00
2           2012-04-02 10:00:00     2012-04-02 13:00:00
3           2012-04-02 12:00:00     2012-04-02 15:00:00

此数据用于计划活动。如果时间重叠,您将无法计划活动。在这种情况下,所有时间都重叠。但他将其与您之前计划的进行了比较。假设我计划了 ID 1,所以我不能计划 ID 2,但我可以计划 ID 3。

如何使用 php 编写查询以选择重叠的项目。非常感谢你

SELECT
   agenda.DateStart,
   agenda.DateEnd,
   agenda.AgendaID
FROM
   AGENDA
WHERE
   ????
   AND
   ????
4

2 回答 2

5
select a.DateStart, a.DateEnd, a.AgendaId, b.DateStart, b.DateEnd, b.AgendaId
from agenda a, agenda b
where 
a.AgendaId <> b.AgendaId
and b.DateStart>= a.DateStart and
b.DateStart<= a.DateEnd
于 2012-04-12T15:16:00.833 回答
0
$query_Orders = "SELECT * FROM AGENDA WHERE fldTime between  DateStart  and DateENd ";

您可以使用MYSQL BETWEEN关键字进行检查。

于 2012-04-12T15:15:52.833 回答