Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Left, Right та Inner об'єднання | Section
Розширений Рівень SQL

Left, Right та Inner об'єднання

Інтернет-магазин замовив більше товарів у постачальника, оскільки запаси на складі закінчувалися. Це означає, що у нас є трохи вільного часу до прибуття поставки.

Це чудова нагода дізнатися щось нове! До цього моменту ви використовували стандартний JOIN у SQL, але існують й інші типи об'єднань, які можна застосовувати.

Ось 4 основні типи об'єднань таблиць:

INNER JOIN: Повертає рядки з відповідними значеннями в обох таблицях. Це те саме, що й стандартний JOIN, який ви вже використовували:

LEFT JOIN: Повертає всі рядки з лівої таблиці та відповідні рядки з правої таблиці. Якщо відповідностей немає, повертає NULL для правої таблиці:

RIGHT JOIN: Повертає всі рядки з правої таблиці та відповідні рядки з лівої таблиці. Якщо відповідностей немає, для лівої таблиці повертається NULL:

FULL JOIN: Повертає всі рядки з обох таблиць. Якщо відповідності немає, повертає NULL для відсутніх значень з іншої таблиці:

Перш ніж розглядати ці типи з'єднань, ознайомтеся з двома таблицями, з якими ви працюватимете. Вони містять інформацію про курси та студентів, які на них записані.

courses:

enrollments:

Синтаксис використання цих типів об'єднань насправді простий. Замість звичного JOIN або INNER JOIN просто вкажіть LEFT JOIN або інший тип JOIN:

SELECT table1.column, table2.column 
FROM table1 -- this is the LEFT table
LEFT JOIN table 2 -- this is the RIGHT table
ON table1.common_column = table2.common_column
Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 1. Розділ 19
single

single

Left, Right та Inner об'єднання

Свайпніть щоб показати меню

Інтернет-магазин замовив більше товарів у постачальника, оскільки запаси на складі закінчувалися. Це означає, що у нас є трохи вільного часу до прибуття поставки.

Це чудова нагода дізнатися щось нове! До цього моменту ви використовували стандартний JOIN у SQL, але існують й інші типи об'єднань, які можна застосовувати.

Ось 4 основні типи об'єднань таблиць:

INNER JOIN: Повертає рядки з відповідними значеннями в обох таблицях. Це те саме, що й стандартний JOIN, який ви вже використовували:

LEFT JOIN: Повертає всі рядки з лівої таблиці та відповідні рядки з правої таблиці. Якщо відповідностей немає, повертає NULL для правої таблиці:

RIGHT JOIN: Повертає всі рядки з правої таблиці та відповідні рядки з лівої таблиці. Якщо відповідностей немає, для лівої таблиці повертається NULL:

FULL JOIN: Повертає всі рядки з обох таблиць. Якщо відповідності немає, повертає NULL для відсутніх значень з іншої таблиці:

Перш ніж розглядати ці типи з'єднань, ознайомтеся з двома таблицями, з якими ви працюватимете. Вони містять інформацію про курси та студентів, які на них записані.

courses:

enrollments:

Синтаксис використання цих типів об'єднань насправді простий. Замість звичного JOIN або INNER JOIN просто вкажіть LEFT JOIN або інший тип JOIN:

SELECT table1.column, table2.column 
FROM table1 -- this is the LEFT table
LEFT JOIN table 2 -- this is the RIGHT table
ON table1.common_column = table2.common_column
Завдання

Проведіть, щоб почати кодувати

Напишіть запит для отримання списку всіх курсів та студентів, які на них записані, включаючи курси без зареєстрованих студентів.

Потрібно отримати наступні стовпці у такому порядку:

courses.course_id,
courses.course_name,
courses.description,
enrollments.student_name,
enrollments.enrollment_date

Використайте відповідний тип JOIN для виконання цього завдання!

Короткі інструкції

  • Отримайте стовпці courses.course_id, courses.course_name, courses.description, enrollments.student_name та enrollments.enrollment_date з таблиці courses.
  • Використайте LEFT JOIN для приєднання таблиці enrollments.
  • Спільний стовпець для обох таблиць — courses.course_id = enrollments.course_id.

Рішення

Switch to desktopПерейдіть на комп'ютер для реальної практикиПродовжуйте з того місця, де ви зупинились, використовуючи один з наведених нижче варіантів
Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 1. Розділ 19
single

single

Запитати АІ

expand

Запитати АІ

ChatGPT

Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат

some-alt