2016-03-17 5 views
-1

У меня есть две таблицы, и связь между ними НЕТ. ,Как я могу получить все данные из первой таблицы, а некоторые из второй таблицы

table1 
--------------- 
NO.  courses 
--------------- 
1   CHEM 101 
2   ENGL 101 
3   MATH 101 
4   PE 101 
5   PHYS 101 
6   IAS 101 

table2 
---------------------------- 
NO.   ID  Grades 
---------------------------- 
1   5050  A+ 
2   5050  B 
1   4040  A 
2   4040  C 

Как я могу написать SQL-запрос, чтобы дать мне выходной формы table1 и TABLE2 только для тех, кто идентификатор 5050 и выход должен быть, как этот

output 
-------------------------- 
courses   Grades 
-------------------------- 
CHEM 101  A+ 
ENGL 101  B 
MATH 101  null 
PE 101   null 
PHYS 101  null 
IAS 101   null 

ответ

1

Это является примером LEFT JOIN - сохраняя все строки в первой таблице, но только соответствующие строки во втором.

В вашем случае это выглядит следующим образом:

select t1.*, t2.grade 
from table1 t1 left join 
    table2 t2 
    on t1.no = t2.no and t2.id = 5050; 
Смежные вопросы