我有一個事件表,每個事件都有一個開始日期和一個結束日期。當天發生的事件列表
我需要顯示天數列表並顯示每天發生哪些事件。
E.g.說我有對事件運行週一至週三,另一個是運行週二至週四,我想創建這樣一個表:
Mon: Event 1
Tue: Event 1, Event 2
Wed: Event 1, Event 2
Thu: Event 2
我可以看到通過運行一個查詢要做到這一點無論是唯一的辦法每天或通過加載給定日期範圍內的所有事件,然後在我的代碼中複製它們,如果它們持續超過一天。這兩種方法看起來都很詭異,我敢肯定我錯過了一些東西。
有沒有更好的方法來做到這一點?
結構:
id INT
name VARCHAR
start_date DATE
end_date DATE
當前查詢(略簡單,因爲這個數據庫結構是慘不忍睹):
SELECT *
FROM events
WHERE start_date <= $somedate
AND end_date >= $somedate
...其中$ somedate是一個給定的日期。 (是的,我在我的代碼中正確轉義它)
你能發表您的查詢嗎? – Kuzgun
請提供一些結構數據 –
@Kuzgun我已更新我的問題。 –