▲▲▲▲▲复杂Sql语句求救,高手看过来!▲▲▲▲▲
辅导学校表A字段:a_id,a_name ...
学员表B字段:b_id,b_name,a_id ...
班次教学时间区间表C字段:c_id,c_type,start_time,end_time,a_id ...
班次表D字段:d_id,d_name,d_dd,d_ee,b_id,c_id ...
输入参数:b_id
输出:d_dd,d_ee,a_id,a_name,c_type,start_time,end_time
要求:
相同a_id,相同c_type当中,返回的信息对应c表中时间区间最靠近当前的一条信息(注意只有一条)
c表中通常存在有多个不同的a_id。
就是说,我想获取某个学员最近在各个辅导学校的辅导班的学习情况跟踪。
d_dd,d_ee,a_id,a_name,c_type,start_time,end_time
dd ee 1 aname1 type1 2000-1-1 2001-2-1
dd ee 1 aname1 type2 2000-1-5 2001-2-8
dd ee 2 aname2 type2 2000-1-1 2001-2-1
dd ee 2 aname2 type3 2000-1-23 2001-2-1
注:表c中,c_type相同的时间区间是没有重叠的。
最好是执行效率高的。谢谢高手!!!