我有事件列表,所以每个事件开始日期到结束日期,所以每个事件都有事件开始日期和结束日期之间的日程表列表我只需要获取第一个最近的日期我是指第一个事件日程表日期。
这是我的代码
SELECT
s.schedule_id, s.schedule_start_time, s.schedule_end_time, s.schedule_topic, s.Parallel,
c.speaker_name
FROM schedule_table AS s, speaker_profile_table AS c
WHERE
s.event_id='23'
OR s.schedule_date LIKE '%2012-06-07%'
AND c.speaker_id = s.speaker_id
ORDER BY s.schedule_start_time ASC
在这里,我得到了所有这样的日程表
schedule1:2012-06-06,schedule2:2012-06-06,schedule3:2012-06-08
这里我只需要schedule1和schedule2只有我不需要schedule3我怎么能得到这个请指导我
感谢您提前
答案 0 :(得分:0)
如果我理解你想要什么,这应该可以胜任( EDITED ):
SELECT
s.schedule_id, s.schedule_start_time, s.schedule_end_time, s.schedule_topic, s.Parallel,
c.speaker_name
FROM schedule_table s
LEFT JOIN speaker_profile_table c ON c.speaker_id = s.speaker_id
WHERE s.schedule_date = (
SELECT schedule_date
FROM schedule_table
WHERE
event_id = '23'
OR schedule_date LIKE '%2012-06-07%'
ORDER BY schedule_date ASC
LIMIT 1
)
ORDER BY s.schedule_start_time ASC