2014-07-17 91 views
0

我想从一个旧数据库检索客户端的数据。我需要的数据是这两个sql语句的组合。我将如何将它们结合起来,从第二个语句中的enrol_stud表和Stud_Haddress表中获取所有数据。如何结合2个SQL语句

声明1 - 我希望所有从Enrol_Stud和Stud_Haddress数据包含在声明中2

select enrol_stud.*, stud_haddress.* 
from enrol_stud_forms 
inner join enrol_stud on enrol_stud_forms.student_id = enrol_stud.student_id 

声明2我想从两个表中的数据上面包含在下面的语句。

SELECT contact.*, vsmc.*, concarer1.*, salcarer2.*, contact.firstname ||' 
'||contact.surname as STUDENT, salcarer1.salutation as CARER1_TITLE, concarer1.firstname as CARER1_FIRSTNAME, concarer1.surname as CARER1_SURNAME, concarer1.email_address as CARER1_EMAIL, salcarer2.salutation as CARER2_TITLE, concarer2.firstname as CARER2_FIRSTNAME, concarer2.surname as CARER2_SURNAME, concarer2.email_address as CARER2_EMAIL 

FROM get_currently_enroled_students ('now') gces 
INNER JOIN student on gces.student_id = student.student_id 
INNER JOIN contact on student.contact_id=contact.contact_id 
INNER JOIN view_Student_mail_carers vsmc on student.student_id=vsmc.student_id 
INNER JOIN contact concarer1 on vsmc.carer1_contact_id=concarer1.contact_id 
INNER JOIN contact concarer2 on vsmc.carer2_contact_id=concarer2.contact_id 
INNER JOIN salutation salcarer1 on concarer1.salutation_id=salcarer1.salutation_id 
INNER JOIN salutation salcarer2 on concarer2.salutation_id=salcarer2.salutation_id 
ORDER BY contact.surname, contact.firstname 

我知道它在连接,我只是不能解决如何包括它们。

+0

声明1应该有这些线条在它的结束。内部加入ridbc_stud_haddress在ridbc_enrol_stud.student_id = ridbc_stud_haddress.student_id – user3847672

回答

0

你可以试试下面的一样,包括每个职位第一语句中的列以及包括任命为下面指出

SELECT contact.*, 
vsmc.*, 
enrol_stud.*, <- here 
stud_haddress.*, <-here 
concarer1.*, 
salcarer2.*, 
contact.firstname ||' '||contact.surname as STUDENT, 
salcarer1.salutation as CARER1_TITLE, 
concarer1.firstname as CARER1_FIRSTNAME, 
concarer1.surname as CARER1_SURNAME, 
concarer1.email_address as CARER1_EMAIL, 
salcarer2.salutation as CARER2_TITLE, 
concarer2.firstname as CARER2_FIRSTNAME, 
concarer2.surname as CARER2_SURNAME, 
concarer2.email_address as CARER2_EMAIL 

FROM get_currently_enroled_students ('now') gces 
INNER JOIN enrol_stud_forms on gces.student_id = enrol_stud_forms.student_id <- here 
INNER JOIN enrol_stud on enrol_stud.student_id = gces.student_id <- here 
INNER JOIN student on gces.student_id = student.student_id 
INNER JOIN contact on student.contact_id=contact.contact_id 
INNER JOIN view_Student_mail_carers vsmc on student.student_id=vsmc.student_id 
INNER JOIN contact concarer1 on vsmc.carer1_contact_id=concarer1.contact_id 
INNER JOIN contact concarer2 on vsmc.carer2_contact_id=concarer2.contact_id 
INNER JOIN salutation salcarer1 
on concarer1.salutation_id=salcarer1.salutation_id 
INNER JOIN salutation salcarer2 
on concarer2.salutation_id=salcarer2.salutation_id 
ORDER BY contact.surname, contact.firstname 
+0

谢谢。这是一个巨大的帮助。 – user3847672

+0

@ user3847672,那么是时候通过点击投票上/下按钮下的检查按钮来接受答案。 – Rahul