SQL и Анализ данных – Telegram
SQL и Анализ данных
12.5K subscribers
665 photos
62 videos
3 files
680 links
Базы данных и всё, что с ними связано!

Сотрудничество: @haarrp

РКН № 6520279766
Download Telegram
🖥 SQL-квест: фэнтезийное приключение для аналитиков данных

Представь фэнтези-мир, где заклинания - это SQL-запросы, а древние артефакты спрятаны в таблицах и JSON-документах.

🧙Ты - боевой дата-аналитик, который с помощью SQL, Python, ETL и визуализаций охотится за харизматичным злодеем Архивариусом Пакостусом, что ломает индексы, крадёт данные и готовит “шторм данных” на столицу.🔮

В каждом эпизоде тебя ждут: выборы с последствиями, хитрые задачи от простых SELECT до рекурсивных CTE и BigQuery, юмор, эпик и неожиданные повороты.

Хочешь проверить, сможешь ли ты спасти королевство не мечом, а запросами? Тогда добро пожаловать в SQL-квест.

🪄 Начать квест: https://uproger.com/sql-kvest-fentezijnoe-priklyuchenie-dlya-analitikov-dannyh/
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
13🔥10👍21😁1
🖥 Docker большой исчерпывающий курс. Глава 1. Архитектура, понятия и первый запуск

Курс по Docker, написанный программистами для программистов. Мы выкинули историю контейнеризации и скучную теорию.

Вместо этого жесткая практика: ментальные модели через ООП, анатомия Linux-процессов, написание Dockerfile, docker-compose и подготовка к продакшену.

Экономь время: учись только тому, что реально используется в индустрии

https://uproger.com/docker-bolshoj-ischerpyvayushhij-kurs-glava-1-arhitektura-ponyatiya-i-pervyj-zapusk/
Please open Telegram to view this post
VIEW IN TELEGRAM
5👍4🔥2
🔥 На stepik вышел курс, который учит Создавать настоящие AI-сервисы, а не просто запускать скрипты?

Этот практический курс по Python и FastAPI покажет, как собрать полноценное приложение с ИИ, базой данных, автогенерацией контента и Telegram-ботом.

Ты пройдёшь путь от первого HTTP-запроса до рабочего сервиса, который сам генерирует текст через ИИ, сохраняет данные, отправляет результаты по расписанию и отвечает пользователям.

Никакой теории ради теории - только практические шаги, из которых рождается реальный продукт.

🎁 48 часов действует новогодняя скидка в 40% процентов

👉 Начать учиться на Stepik
3👍2🥰1
🖥 Продвинутый SQL-совет по оптимизации: делай запросы "питающимися индексом" (index-only scan) с правильным составным индексом.

Идея: не просто добавить индекс на один столбец, а так подобрать порядок полей, чтобы запрос вообще не ходил в таблицу, а читал всё из индекса. Это даёт огромный буст на "горячих" таблицах.

Допустим, у тебя часто есть такой запрос:


SELECT
id,
created_at,
total_amount
FROM orders
WHERE user_id = 123
AND status = 'paid'
ORDER BY created_at DESC
LIMIT 20;


Типичная ошибка - делать что-то вроде:


CREATE INDEX idx_orders_user ON orders (user_id);
CREATE INDEX idx_orders_status ON orders (status);
CREATE INDEX idx_orders_created ON orders (created_at);


Планировщику всё равно приходится лазить в таблицу и склеивать условия. Гораздо эффективнее один правильный составной индекс:


CREATE INDEX idx_orders_user_status_created_at
ON orders (user_id, status, created_at DESC)
INCLUDE (total_amount);


Почему это полезно:


user_id, status - фильтруют строки

created_at DESC - сразу даёт нужный порядок для ORDER BY ... DESC

INCLUDE (total_amount) - позволяет взять сумму прямо из индекса


В результате PostgreSQL (и другие СУБД с подобной механикой) могут сделать index-only scan: прочитать подходящие строки в нужном порядке из одного индекса и почти не трогать основную таблицу.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17
This media is not supported in your browser
VIEW IN TELEGRAM
⚡️ ИИ для SQL: пусть он объяснит «почему запрос тормозит»

Профессиональный лайфхак:
не проси ИИ «оптимизировать запрос» вслепую.
Вместо этого — давай ему EXPLAIN / EXPLAIN ANALYZE и структуру таблиц.

ИИ отлично умеет:
- разбирать план выполнения
- находить узкие места (Seq Scan, лишние JOIN, сортировки)
- предлагать индексы и переписывание запроса по факту, а не наугад

Алгоритм простой:
1️⃣ запускаешь EXPLAIN ANALYZE
2️⃣ прикладываешь схему таблиц
3️⃣ спрашиваешь: *где bottleneck и что бы ты поменял?*

Так ты получаешь не магию, а обоснованные рекомендации с пониманием, зачем они нужны.


пример «правильного» запроса к ИИ с реальными данными

-- запрос
SELECT *
FROM orders o
JOIN customers c ON c.id = o.customer_id
WHERE o.created_at > NOW() - INTERVAL '30 days'
AND c.country = 'US'
ORDER BY o.created_at DESC
LIMIT 100;

-- план выполнения
EXPLAIN ANALYZE
SELECT ...
-- (сюда вставь полный план: Seq Scan / Index Scan / сортировки и т.п.)

-- схема таблиц (важно!)
\d orders
\d customers

-- вопрос ИИ:
"Разбери план выполнения.
Где узкие места?
Нужны ли индексы и какие именно?
Можно ли переписать запрос быстрее, не меняя логику?"


https://www.youtube.com/shorts/LcLMwpVMKNQ
🔥162
👍6😁32🔥1