← К оглавлению занятия

💻 Примеры

📁 Блок: SQL / SQLite / Повторение ⏱️ Время изучения: ~60 мин 🎯 Сложность: Повторение

⚡ Кратко: суть занятия

Summary session SQL 13 повторяет DBeaver, SQLite, pandas и практикум с погодой.

DBeaver нужен для подключения, SQL-скриптов, просмотра таблиц, ER Diagram и экспорта CSV.

SQLite в Colab работает через sqlite3.connect(), а pandas помогает быстро создать и загрузить таблицу.

Главный учебный цикл: DataFrameto_sql()read_sql_query() → проверка результата.

Практикум закрепляет ORDER BY date DESC LIMIT 3, AVG() и поиск максимума через сортировку.

Домашнее задание повторяет фильтрацию, вычисляемый столбец, дату через 51 день, COUNT(DISTINCT) и JOIN.

Топ-3 ошибки: запускать запрос не в том подключении, забыть commit(), делать LIMIT без сортировки.

Повторение DBeaver-запроса

SELECT *
FROM customers;

Это минимальная проверка, что подключение к базе работает и SQL Editor выполняет запрос.

Повторение SQLite-паттерна

import pandas as pd
import sqlite3

conn = sqlite3.connect('summary_session.db')

df = pd.DataFrame({
    'id': [1, 2, 3],
    'name': ['Alice', 'Bob', 'Charlie'],
    'score': [78, 85, 91]
})

df.to_sql('scores', conn, if_exists='replace', index=False)
result = pd.read_sql_query('SELECT AVG(score) AS avg_score FROM scores;', conn)
print(result)
conn.close()

Повторение домашнего JOIN

SELECT od.*, po.payment_method
FROM order_details AS od
JOIN purchase_orders AS po
    ON po.id = od.purchase_order_id
WHERE po.payment_method IS NOT NULL;