pip install mysql-connector-python
Установка Python-драйвера MySQL.
pip install mysql-connector-pythonRevision 1 повторяет подключение MySQL из Python и практику SQL по базе sakila.
В Python используется mysql-connector-python: подключение, cursor, execute, fetchall, description, DataFrame и close.
SQL-повторение начинается с поиска фильмов по LIKE "%LION%" и подсчёта таких фильмов.
JOIN film, film_category и category нужен для вывода фильмов с категориями.
ORDER BY length DESC LIMIT 10 показывает самые длинные фильмы.
GROUP BY category и HAVING фильтруют категории по количеству фильмов.
Оконные функции AVG(...) OVER (PARTITION BY name) и DENSE_RANK() OVER (...) добавляют агрегаты без схлопывания строк.
Топ-3 ошибки: забыть закрыть соединение, фильтровать Horror по неверному category_id, путать GROUP BY и оконную агрегацию.
Установка Python-драйвера MySQL.
pip install mysql-connector-pythonОткрыть соединение с MySQL.
connection = mysql.connector.connect(host="...", user="...", password="...", database="sakila")Выполнить SQL-запрос.
cursor.execute("SELECT * FROM film LIMIT 10")Получить все строки результата.
rows = cursor.fetchall()Получить имена столбцов результата.
columns = [column[0] for column in cursor.description]Преобразовать результат в таблицу pandas.
df = pd.DataFrame(rows, columns=columns)Поиск по части строки.
SELECT * FROM film WHERE title LIKE "%LION%";Ранжирование строк оконной функцией.
DENSE_RANK() OVER (ORDER BY length DESC) AS length_rankSQL: справочник SQL. MongoDB: справочник MongoDB.