Зміст курсу
Розширений Рівень SQL
Розширений Рівень SQL
LEFT, RIGHT and INNER JOINs
Чудова робота! Інтернет-магазин оформив замовлення у постачальника на продукти, яких не вистачало на складі, тож вони не знадобляться нам до прибуття відправлення.
Це - відмінна нагода вивчити щось нове! Протягом попередніх 4-х розділів ви використовували стандартний JOIN
, не знаючи, що існують інші способи об'єднання таблиць.
Існує 4 основних типи об'єднання таблиць:
-
INNER JOIN
: Повертає лише ті рядки, які мають відповідні значення в обох таблицях; (Це об'єднання функціонує так само, як стандартний JOIN, який ви використовували дотепер) -
LEFT JOIN
: Повертає всі рядки з лівої таблиці та відповідні рядки з правої таблиці. Якщо відповідностей немає, повертаєNULL
для правої таблиці; -
RIGHT JOIN
: Повертає всі рядки з правої таблиці та відповідні рядки з лівої таблиці. Якщо відповідностей немає, повертаєNULL
для лівої таблиці; -
FULL JOIN
: Повертає всі рядки, коли є відповідність хоча б у одній з таблиць. Якщо відповідностей немає, повертаєNULL
за відсутніми значеннями в іншій таблиці.
Перед тим як почати працювати з цими типами з'єднань, давайте подивимося на дві нові таблиці, з якими ми будемо працювати. Ці таблиці містять інформацію про курси, а також студентів, які записані на ці курси.
courses
:
enrollments
:
Синтаксис для використання цих типів з'єднань насправді простий. Замість звичного JOIN
або INNER JOIN
просто вкажіть LEFT JOIN
або будь-який інший тип JOIN
.
У цьому випадку синтаксис буде виглядати так:
З цього синтаксису очевидно, яка таблиця буде лівою таблицею, а яка - правою таблицею.
Перейдемо до завдання!
Swipe to show code editor
Напишіть запит, щоб отримати список усіх курсів та зареєстрованих студентів, включно з курсами, на які не зареєстровано жодного студента.
Вам потрібно отримати такі стовпці в цьому порядку:
Використайте відповідний тип JOIN
, щоб вирішити це завдання!
Дякуємо за ваш відгук!
LEFT, RIGHT and INNER JOINs
Чудова робота! Інтернет-магазин оформив замовлення у постачальника на продукти, яких не вистачало на складі, тож вони не знадобляться нам до прибуття відправлення.
Це - відмінна нагода вивчити щось нове! Протягом попередніх 4-х розділів ви використовували стандартний JOIN
, не знаючи, що існують інші способи об'єднання таблиць.
Існує 4 основних типи об'єднання таблиць:
-
INNER JOIN
: Повертає лише ті рядки, які мають відповідні значення в обох таблицях; (Це об'єднання функціонує так само, як стандартний JOIN, який ви використовували дотепер) -
LEFT JOIN
: Повертає всі рядки з лівої таблиці та відповідні рядки з правої таблиці. Якщо відповідностей немає, повертаєNULL
для правої таблиці; -
RIGHT JOIN
: Повертає всі рядки з правої таблиці та відповідні рядки з лівої таблиці. Якщо відповідностей немає, повертаєNULL
для лівої таблиці; -
FULL JOIN
: Повертає всі рядки, коли є відповідність хоча б у одній з таблиць. Якщо відповідностей немає, повертаєNULL
за відсутніми значеннями в іншій таблиці.
Перед тим як почати працювати з цими типами з'єднань, давайте подивимося на дві нові таблиці, з якими ми будемо працювати. Ці таблиці містять інформацію про курси, а також студентів, які записані на ці курси.
courses
:
enrollments
:
Синтаксис для використання цих типів з'єднань насправді простий. Замість звичного JOIN
або INNER JOIN
просто вкажіть LEFT JOIN
або будь-який інший тип JOIN
.
У цьому випадку синтаксис буде виглядати так:
З цього синтаксису очевидно, яка таблиця буде лівою таблицею, а яка - правою таблицею.
Перейдемо до завдання!
Swipe to show code editor
Напишіть запит, щоб отримати список усіх курсів та зареєстрованих студентів, включно з курсами, на які не зареєстровано жодного студента.
Вам потрібно отримати такі стовпці в цьому порядку:
Використайте відповідний тип JOIN
, щоб вирішити це завдання!
Дякуємо за ваш відгук!