Bắt đầu ngayBắt đầu miễn phí

Sức mạnh của SQL nằm ở mối quan hệ giữa các bảng: INNER JOIN

Ở đây, bạn sẽ thực hiện INNER JOIN đầu tiên của mình! Bạn sẽ làm việc với cơ sở dữ liệu SQLite yêu thích, Chinook.sqlite. Với mỗi bản ghi trong bảng Album, bạn sẽ trích xuất Title cùng với Name của Artist. Trường sau đến từ bảng Artist, vì vậy bạn cần INNER JOIN hai bảng này theo cột ArtistID của cả hai.

Hãy nhớ rằng để INNER JOIN các bảng OrdersCustomers từ cơ sở dữ liệu Northwind, Hugo đã chạy truy vấn SQL sau:

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

Đoạn mã sau đã được chạy để nhập các gói cần thiết và tạo engine:

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

Bài tập này là một phần của khóa học

Nhập dữ liệu vào Python: Giới thiệu

Xem khóa học

Hướng dẫn bài tập

  • Gán cho rs kết quả từ truy vấn sau: select tất cả các bản ghi, lấy Title của bản ghi và Name của nghệ sĩ cho mỗi bản ghi lần lượt from bảng Album và bảng Artist. Để làm vậy, hãy INNER JOIN hai bảng này theo cột ArtistID của cả hai.
  • Khi gọi pd.DataFrame(), áp dụng phương thức fetchall() lên rs để lấy tất cả bản ghi trong rs. Lưu chúng vào DataFrame df.
  • Đặt tên cột của DataFrame khớp với tên cột tương ứng trong bảng.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

# 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())
Chỉnh sửa và Chạy Mã