Data Science. SQL hub
По всем вопросам- @workakkk @itchannels_telegram - 🔥лучшие ит-каналы @ai_machinelearning_big_data - Machine learning @pythonl - Python @pythonlbooks- python книги📚 @datascienceiot - ml книги📚 РКН: https://vk.cc/cIi9vo #VRHSZ
Ko'proq ko'rsatish📈 Telegram kanali Data Science. SQL hub analitikasi
Data Science. SQL hub (@sqlhub) Rus til segmentidagi kanali faol ishtirokchi. Hozirda hamjamiyat 35 923 obunachidan iborat bo'lib, Texnologiyalar & Aralashmalar toifasida 3 609-o'rinni va Rossiya mintaqasida 17 730-o'rinni egallagan.
📊 Auditoriya ko‘rsatkichlari va dinamika
невідомо sanasidan buyon loyiha tez o‘sib, 35 923 obunachiga ega bo‘ldi.
29 Avgust, 2026 dagi oxirgi ma’lumotlarga ko‘ra kanal barqaror faollikka ega. Oxirgi 30 kunda obunachilar soni 40 ga, so‘nggi 24 soatda esa 14 ga o‘zgardi va umumiy qamrov yuqori darajada qolmoqda.
- Tasdiqlash holati: Tasdiqlanmagan
- Jalb etish (ER): Auditoriya o‘rtacha 7.07% darajada jalb etiladi. Nashrdan keyingi dastlabki 24 soatda kontent odatda umumiy obunachilar sonining 3.47% ini tashkil etuvchi reaksiyalarni to‘playdi.
- Post qamrovi: Har bir post o‘rtacha 2 538 marta ko‘riladi; birinchi sutkada odatda 1 246 ta ko‘rish yig‘iladi.
- Reaksiyalar va o‘zaro ta’sir: Auditoriya faol: har bir postga o‘rtacha 12 ta reaksiya keladi.
- Tematik yo‘nalishlar: Kontent sql, индекс, postgres, index, sqlite kabi asosiy mavzularga jamlangan.
📝 Tavsif va kontent siyosati
Muallif resursni shaxsiy fikrni ifoda etish maydoni sifatida ta’riflaydi:
“По всем вопросам- @workakkk
@itchannels_telegram - 🔥лучшие ит-каналы
@ai_machinelearning_big_data - Machine learning
@pythonl - Python
@pythonlbooks- python книги📚
@datascienceiot - ml книги📚
РКН: https://vk.cc/cIi9vo
#VRHSZ”
Yuqori yangilanish chastotasi (oxirgi ma’lumot 30 Avgust, 2026 da olingan) sababli kanal doimo dolzarb va katta qamrovli bo‘lib qoladi. Analitika auditoriya kontent bilan faol hamkorlik qilishini, uni Texnologiyalar & Aralashmalar toifasidagi muhim ta’sir nuqtasiga aylantirishini ko‘rsatadi.
ON CONFLICT DO SELECT.
Выглядит как незначительно изменение, но для разработки это очень удобная штука: теперь можно атомарно сделать get-or-create.
То есть логика становится простой:
- вставить строку
- если такой ключ уже есть - не обновлять её
- просто вернуть существующую запись
Пример:
INSERT INTO users (email, name)
VALUES ('alice@example.com', 'Alice')
ON CONFLICT (email) DO SELECT
RETURNING *;
Раньше для такого случая часто приходилось городить обходные варианты через DO NOTHING, отдельный SELECT, CTE или искусственный DO UPDATE, который ничего по сути не меняет.
Теперь PostgreSQL закрывает один из самых частых кейсов в backend-разработке: безопасно создать запись или получить уже существующую без лишней гонки между запросами.
Простой синтаксис, большой плюс к читаемости.FILTER в агрегатах вместо пачки CASE WHEN.
Обычно пишут так:
SELECT
COUNT(*) AS total_orders,
SUM(CASE WHEN status = 'paid' THEN 1 ELSE 0 END) AS paid_orders,
SUM(CASE WHEN status = 'failed' THEN 1 ELSE 0 END) AS failed_orders,
SUM(CASE WHEN amount > 1000 THEN amount ELSE 0 END) AS big_order_revenue
FROM orders;
Но в PostgreSQL это можно сделать чище:
SELECT
COUNT(*) AS total_orders,
COUNT(*) FILTER (WHERE status = 'paid') AS paid_orders,
COUNT(*) FILTER (WHERE status = 'failed') AS failed_orders,
SUM(amount) FILTER (WHERE amount > 1000) AS big_order_revenue
FROM orders;
Чем полезно:
• запрос читается как аналитическая таблица
• меньше шума от CASE WHEN
• проще добавлять новые метрики
• условия не смешиваются с логикой агрегации
• особенно удобно для дашбордов и отчётов
А ещё можно делать несколько метрик по разным условиям за один проход по данным:
SELECT
date_trunc('day', created_at) AS day,
COUNT(*) FILTER (WHERE status = 'paid') AS paid,
COUNT(*) FILTER (WHERE status = 'refunded') AS refunded,
AVG(amount) FILTER (WHERE status = 'paid') AS avg_paid_amount
FROM orders
GROUP BY 1
ORDER BY 1;
Это маленькая фича, но в реальной аналитике она сильно повышает читаемость SQL.