我有一张Event
表。
属性是:
event_id
,event_name
,start_date
,end_date
。
我想知道start_date
和end_date
相同的所有ID。
如何在mysql中实现这一目标?
答案 0 :(得分:1)
如果要查找共享相同开始日期和结束日期的所有事件,则必须自己加入表格。
SELECT
e1.event_id,
e2.event_id
FROM
event e1 JOIN event e2 ON (e1.event_id < e2.event_id AND
e1.start_date = e2.start_date AND
e1.end_date = e2.end_date)
如果两个不同事件的start_date和end_date相同,则会自动加入事件表。条件e1.event_id < e2.event_id
是为了防止同一事件与自身连接并且报告两对匹配事件(例如[event1,event22]和[event22,event1])