2015-05-18 49 views
1

这是我在stackoverflow中发布的第一个问题。希望你们能帮我解决这个问题。我被困了2天。加入多个表格并对结果进行排序

我有6张桌子。这一切都在下面:

学生:

id name lastname 
1  John Snow 
2  Sansa Stark 
3  T-Bag Bagwell 

student_course:

id student_id course_id course_start course_end 
1  1    1   2015-06-19  2015-08-20 
2  2    3   2015-07-09  2015-09-15 
3  3    1   2015-05-15  2015-08-22 

付款:

payment_id student_id course_id 
1    1    1 
2    2    3 
3    3    1 

payment_initial:

payment_id payment_due 
1    2015-06-12 
3    2015-05-08 

payment_installment:

payment_id payment_due int_payment_due 
2    2015-07-02  2015-07-15 

passport_visa:

student_id passport_expiry_date visa_expiry_date 
1    2015-09-10    2015-10-12 
2    2015-09-12    2015-09-15 
3    2015-10-11    2015-9-28 

,我想结果是:结果将通过具有 “日期” 字段日期相结合的形式3表中的排序。 “日期”排序后的字段仅包括出现之后的日期。 我怎样才能让这给我带来的结果是这样的查询字符串:

student_id(1) course_id(1)      course_start(2015-06-19) 
student_id(2) course_id(3) payment_id(2) payment_due(2015-07-02) 
student_id(2) course_id(3)      course_start(2015-07-09) 
student_id(2) course_id(3) payment_id(2) int_payment_due(2015-07-15) 
student_id(1) course_id(1)      course_end(2015-08-20) 
student_id(3) course_id(1)      course_end(2015-08-22) 
student_id(3)          passport_expiry_date(2015-09-12) 
..... 

我想补充名称的结果,但它表明太长。所以我就这样写。

最后的结果我想是日期字段(排序),以及日期的事件发生(当然开始,当然最后,付款到期...)

很抱歉,如果我的英语语法坏。请帮帮我。谢谢你们。

回答

0

我只是在将数据(具有日期字段)插入到一个表中后收集所有结果,并将它们排序在该表中。这使得更多的插入查询,但很容易排序。 所以我这样做。