НачатьНачать бесплатно

Сила SQL — в связях между таблицами: INNER JOIN

В этом упражнении вы выполните свой первый INNER JOIN! Вы будете работать с уже знакомой вам базой данных SQLite — Chinook.sqlite. Для каждой записи в таблице Album вы извлечёте поле Title, а также поле Name из таблицы Artist. Для этого потребуется объединить две таблицы с помощью INNER JOIN по столбцу ArtistID.

Напомним, что для объединения таблиц Orders и Customers из базы данных Northwind Хьюго использовал следующий SQL-запрос:

"SELECT OrderID, CompanyName FROM Orders INNER JOIN Customers on Orders.CustomerID = Customers.CustomerID"

Следующий код уже выполнен — он импортирует необходимые пакеты и создаёт движок:

import pandas as pd
from sqlalchemy import create_engine
engine = create_engine('sqlite:///Chinook.sqlite')

Это упражнение является частью курса

Введение в импорт данных в Python

Посмотреть курс

Инструкции к упражнению

  • Присвойте переменной rs результат следующего запроса: выберите все записи, извлекая поле Title из таблицы Album и поле Name из таблицы Artist. Для этого объедините две таблицы с помощью INNER JOIN по столбцу ArtistID.
  • В вызове pd.DataFrame() примените метод fetchall() к объекту rs, чтобы получить все записи. Сохраните результат в DataFrame df.
  • Задайте именам столбцов DataFrame соответствующие имена столбцов таблицы.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# Open engine in context manager
# Perform query and save results to DataFrame: df
with engine.connect() as con:
    ____
    ____
    ____

# Print head of DataFrame df
print(df.head())
Редактировать и запускать код