Об'єднання Двох Таблиць
Ми привернули увагу компанії, яка володіє невеликим інтернет-магазином. У них є 2 таблиці, які пов'язані між собою. Перша таблиця містить інформацію про товари, що продаються в інтернет-магазині.
Друга таблиця містить категорії товарів на сайті разом із коротким описом для кожної категорії.
Наше перше завдання — об'єднати ці дві таблиці, щоб дізнатися, скільки товарів є в кожній категорії. Для цього використаємо оператор JOIN.
Перш ніж перейти до виконання завдання, розглянемо, що таке оператор JOIN і як він працює.
Щоб об'єднати дві таблиці, вони повинні мати спільний стовпець. Розглянемо, як працює JOIN, використовуючи таблиці employees та department. Їхній спільний стовпець — це employees.department та departments.name.
При написанні стовпців із цих таблиць починайте з назви таблиці, додайте крапку, а потім назву стовпця. Це допомагає зробити код зрозумілішим, особливо коли в таблицях є стовпці з однаковими назвами. Це точно вказує SQL, з якої таблиці і який стовпець ви маєте на увазі.
Ось завдання: отримати загальну зарплату для працівників у кожному типі відділу (tech/non-tech).
Запит для виконання цього завдання виглядатиме так:
1234SELECT department.type, SUM(employees.salary) AS total_salary FROM employees JOIN department ON employees.department = department.name GROUP BY department.type
Розглянемо, як використовується JOIN у цьому запиті:
- У частині
SELECTперелічено стовпці, які потрібні з обох таблиць, із зазначенням імені таблиці для зрозумілості; - У частині
JOINвказано таблицю для об'єднання та спільний стовпець, який їх пов'язує. У цьому випадку цеemployees.departmentіdepartment.name; - Далі дані групуються за
typeдля обчислення загальної зарплати за допомогою функціїSUM().
Якщо це здається складним, ось проста синтаксична конструкція для використання JOIN:
SELECT table1.column, table2.column
FROM table1
JOIN table2 ON table1.common_column = table2.common_column
На відміну від оператора 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.
Рішення
Дякуємо за ваш відгук!
single
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат
Чудово!
Completion показник покращився до 4
Об'єднання Двох Таблиць
Свайпніть щоб показати меню
Ми привернули увагу компанії, яка володіє невеликим інтернет-магазином. У них є 2 таблиці, які пов'язані між собою. Перша таблиця містить інформацію про товари, що продаються в інтернет-магазині.
Друга таблиця містить категорії товарів на сайті разом із коротким описом для кожної категорії.
Наше перше завдання — об'єднати ці дві таблиці, щоб дізнатися, скільки товарів є в кожній категорії. Для цього використаємо оператор JOIN.
Перш ніж перейти до виконання завдання, розглянемо, що таке оператор JOIN і як він працює.
Щоб об'єднати дві таблиці, вони повинні мати спільний стовпець. Розглянемо, як працює JOIN, використовуючи таблиці employees та department. Їхній спільний стовпець — це employees.department та departments.name.
При написанні стовпців із цих таблиць починайте з назви таблиці, додайте крапку, а потім назву стовпця. Це допомагає зробити код зрозумілішим, особливо коли в таблицях є стовпці з однаковими назвами. Це точно вказує SQL, з якої таблиці і який стовпець ви маєте на увазі.
Ось завдання: отримати загальну зарплату для працівників у кожному типі відділу (tech/non-tech).
Запит для виконання цього завдання виглядатиме так:
1234SELECT department.type, SUM(employees.salary) AS total_salary FROM employees JOIN department ON employees.department = department.name GROUP BY department.type
Розглянемо, як використовується JOIN у цьому запиті:
- У частині
SELECTперелічено стовпці, які потрібні з обох таблиць, із зазначенням імені таблиці для зрозумілості; - У частині
JOINвказано таблицю для об'єднання та спільний стовпець, який їх пов'язує. У цьому випадку цеemployees.departmentіdepartment.name; - Далі дані групуються за
typeдля обчислення загальної зарплати за допомогою функціїSUM().
Якщо це здається складним, ось проста синтаксична конструкція для використання JOIN:
SELECT table1.column, table2.column
FROM table1
JOIN table2 ON table1.common_column = table2.common_column
На відміну від оператора 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.
Рішення
Дякуємо за ваш відгук!
single