Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Join 2 Таблиці | Об'єднання Таблиць
Розширений Рівень SQL

bookJoin 2 Таблиці

Ми привернули увагу компанії, яка володіє невеликим інтернет-магазином. У них є 2 таблиці, які пов’язані між собою. Перша таблиця містить інформацію про товари, що продаються в інтернет-магазині.

Ось як виглядає таблиця product:

Друга таблиця містить категорії товарів на сайті разом із коротким описом для кожної категорії.

Ось як виглядає таблиця category:

Наше перше завдання — об’єднати ці дві таблиці, щоб дізнатися, скільки товарів є в кожній категорії. Для цього використаємо оператор JOIN.

Перш ніж перейти до завдання, розглянемо, що таке оператор JOIN і як він працює.

Щоб об'єднати дві таблиці, вони повинні мати спільний стовпець. Розглянемо, як працює JOIN, використовуючи таблиці employees та department. Їхній спільний стовпець — це employees.department і departments.name.

Примітка

При написанні стовпців з цих таблиць починайте з назви таблиці, додайте крапку, а потім назву стовпця. Це допомагає зробити код зрозумілішим, особливо коли у таблицях є стовпці з однаковими назвами. Це точно вказує SQL, з якої таблиці і який стовпець ви маєте на увазі.

Завдання — отримати загальну зарплату для працівників у кожному типі відділу (tech/non-tech).

Запит для виконання цього завдання виглядатиме так:

1234
SELECT department.type, SUM(employees.salary) AS total_salary FROM employees JOIN department ON employees.department = department.name GROUP BY department.type
copy

Розглянемо, як ми використали JOIN у нашому запиті:

  1. У частині SELECT перелічуємо стовпці, які потрібні з обох таблиць, обов'язково вказуючи назву таблиці для ясності;
  2. У частині JOIN зазначаємо таблицю для об'єднання та спільний стовпець, який їх пов'язує. У цьому випадку це employees.department і department.name;
  3. Далі групуємо дані за type, щоб обчислити загальну зарплату за допомогою функції SUM().

Якщо це здається складним, ось проста синтаксична конструкція для використання JOIN:

SELECT table1.column, table2.column
FROM table1
JOIN table2 ON table1.common_column = table2.common_column

Note

На відміну від оператора UNION, оператор JOIN дозволяє об'єднувати цілі таблиці, а не лише спільні стовпці. Крім того, при використанні JOIN немає потреби у підзапитах, як це буває з UNION.

Завдання

Swipe to start coding

Потрібно об'єднати дві таблиці: category та product. Спільними стовпцями для цих таблиць є product.category_id та category.id.

Ваше завдання — знайти загальну кількість продуктів у кожній категорії. Для цього потрібно обчислити суму стовпця product.amount.

Використайте псевдонім total_amount для цього стовпця. Наприкінці запиту відсортуйте результат за стовпцем total_amount у порядку зростання.

У відповіді повинно бути 2 стовпці: category.name та total.amount.

Коротка інструкція

  • Отримайте стовпець category.name та суму стовпця product.amount з таблиці product.
  • Присвойте псевдонім total_amount другому стовпцю.
  • Об'єднайте таблицю category за допомогою оператора JOIN.
  • Зіставте таблиці за спільним стовпцем product.category_id = category.id.
  • Згрупуйте результати за category.name.
  • Відсортуйте результати за total_amount.

Рішення

Все було зрозуміло?

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

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

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

single

Запитати АІ

expand

Запитати АІ

ChatGPT

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

close

Awesome!

Completion rate improved to 4

bookJoin 2 Таблиці

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

Ми привернули увагу компанії, яка володіє невеликим інтернет-магазином. У них є 2 таблиці, які пов’язані між собою. Перша таблиця містить інформацію про товари, що продаються в інтернет-магазині.

Ось як виглядає таблиця product:

Друга таблиця містить категорії товарів на сайті разом із коротким описом для кожної категорії.

Ось як виглядає таблиця category:

Наше перше завдання — об’єднати ці дві таблиці, щоб дізнатися, скільки товарів є в кожній категорії. Для цього використаємо оператор JOIN.

Перш ніж перейти до завдання, розглянемо, що таке оператор JOIN і як він працює.

Щоб об'єднати дві таблиці, вони повинні мати спільний стовпець. Розглянемо, як працює JOIN, використовуючи таблиці employees та department. Їхній спільний стовпець — це employees.department і departments.name.

Примітка

При написанні стовпців з цих таблиць починайте з назви таблиці, додайте крапку, а потім назву стовпця. Це допомагає зробити код зрозумілішим, особливо коли у таблицях є стовпці з однаковими назвами. Це точно вказує SQL, з якої таблиці і який стовпець ви маєте на увазі.

Завдання — отримати загальну зарплату для працівників у кожному типі відділу (tech/non-tech).

Запит для виконання цього завдання виглядатиме так:

1234
SELECT department.type, SUM(employees.salary) AS total_salary FROM employees JOIN department ON employees.department = department.name GROUP BY department.type
copy

Розглянемо, як ми використали JOIN у нашому запиті:

  1. У частині SELECT перелічуємо стовпці, які потрібні з обох таблиць, обов'язково вказуючи назву таблиці для ясності;
  2. У частині JOIN зазначаємо таблицю для об'єднання та спільний стовпець, який їх пов'язує. У цьому випадку це employees.department і department.name;
  3. Далі групуємо дані за type, щоб обчислити загальну зарплату за допомогою функції SUM().

Якщо це здається складним, ось проста синтаксична конструкція для використання JOIN:

SELECT table1.column, table2.column
FROM table1
JOIN table2 ON table1.common_column = table2.common_column

Note

На відміну від оператора UNION, оператор JOIN дозволяє об'єднувати цілі таблиці, а не лише спільні стовпці. Крім того, при використанні JOIN немає потреби у підзапитах, як це буває з UNION.

Завдання

Swipe to start coding

Потрібно об'єднати дві таблиці: category та product. Спільними стовпцями для цих таблиць є product.category_id та category.id.

Ваше завдання — знайти загальну кількість продуктів у кожній категорії. Для цього потрібно обчислити суму стовпця product.amount.

Використайте псевдонім total_amount для цього стовпця. Наприкінці запиту відсортуйте результат за стовпцем total_amount у порядку зростання.

У відповіді повинно бути 2 стовпці: category.name та total.amount.

Коротка інструкція

  • Отримайте стовпець category.name та суму стовпця product.amount з таблиці product.
  • Присвойте псевдонім total_amount другому стовпцю.
  • Об'єднайте таблицю category за допомогою оператора JOIN.
  • Зіставте таблиці за спільним стовпцем product.category_id = category.id.
  • Згрупуйте результати за category.name.
  • Відсортуйте результати за total_amount.

Рішення

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

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

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

close

Awesome!

Completion rate improved to 4
Секція 3. Розділ 1
single

single

some-alt