Data Science. SQL hub
По всем вопросам- @workakkk @itchannels_telegram - 🔥лучшие ит-каналы @ai_machinelearning_big_data - Machine learning @pythonl - Python @pythonlbooks- python книги📚 @datascienceiot - ml книги📚 РКН: https://vk.cc/cIi9vo #VRHSZ
إظهار المزيد📈 نظرة تحليلية على قناة تيليجرام Data Science. SQL hub
تُعد قناة Data Science. SQL hub (@sqlhub) في القطاع اللغوي الروسية لاعباً نشطاً. يضم المجتمع حالياً 35 848 مشتركاً، محتلاً المرتبة 3 835 في فئة التكنولوجيات والتطبيقات والمرتبة 18 129 في منطقة روسيا.
📊 مؤشرات الجمهور والحراك
منذ تأسيسه في невідомо، حقق المشروع نمواً سريعاً وجمع 35 848 مشتركاً.
بحسب آخر البيانات بتاريخ 13 يونيو, 2026، تحافظ القناة على نشاط مستقر. خلال آخر 30 يوماً تغيّر عدد الأعضاء بمقدار -8، وفي آخر 24 ساعة بمقدار -11، مع بقاء الوصول العام مرتفعاً.
- حالة التحقق: غير موثّقة
- معدل التفاعل (ER): يبلغ متوسط تفاعل الجمهور 9.82%. وخلال أول 24 ساعة من النشر يحصد المحتوى عادةً 4.08% من ردود الفعل نسبةً إلى إجمالي المشتركين.
- وصول المنشورات: يحصل كل منشور على متوسط 3 522 مشاهدة. وخلال اليوم الأول يجمع عادةً 1 461 مشاهدة.
- التفاعلات والاستجابة: يتفاعل الجمهور بانتظام؛ متوسط التفاعلات لكل منشور يبلغ 13.
- الاهتمامات الموضوعية: يركز المحتوى على مواضيع رئيسية مثل sql, индекс, postgres, index, sqlite.
📝 الوصف وسياسة المحتوى
يصف المؤلف القناة بأنها مساحة للتعبير عن الآراء الذاتية:
“По всем вопросам- @workakkk
@itchannels_telegram - 🔥лучшие ит-каналы
@ai_machinelearning_big_data - Machine learning
@pythonl - Python
@pythonlbooks- python книги📚
@datascienceiot - ml книги📚
РКН: https://vk.cc/cIi9vo
#VRHSZ”
بفضل وتيرة التحديث المرتفعة (أحدث البيانات بتاريخ 14 يونيو, 2026) تحافظ القناة على حداثتها ومستوى وصول مرتفع. وتُظهر التحليلات تفاعلاً نشطاً من الجمهور، ما يجعلها نقطة تأثير مهمة ضمن فئة التكنولوجيات والتطبيقات.
purchases:
purchases (
id SERIAL PRIMARY KEY,
customer_id INT,
purchase_date DATE,
amount NUMERIC
)
Задача:
Найти всех клиентов, у которых вторая покупка произошла не позднее, чем через 7 дней после первой.
Показать:
- customer_id
- first_purchase_date
- second_purchase_date
✅ Решение:
WITH ordered_purchases AS (
SELECT
customer_id,
purchase_date,
ROW_NUMBER() OVER (PARTITION BY customer_id ORDER BY purchase_date) AS rn
FROM purchases
),
first_second_purchases AS (
SELECT
p1.customer_id,
p1.purchase_date AS first_purchase_date,
p2.purchase_date AS second_purchase_date
FROM ordered_purchases p1
JOIN ordered_purchases p2
ON p1.customer_id = p2.customer_id
AND p1.rn = 1
AND p2.rn = 2
)
SELECT *
FROM first_second_purchases
WHERE second_purchase_date <= first_purchase_date + INTERVAL '7 days';
🔍 Пояснение:
- ROW_NUMBER() присваивает каждой покупке порядковый номер в рамках клиента.
- Через self-join соединяем первую и вторую покупку клиента.
- Далее фильтруем, оставляя только те, у кого вторая покупка была не позднее 7 дней после первой.
⚠️ Важно:
- Клиенты с одной покупкой исключаются — у них нет второй.
- Мы не ищем любые две покупки в пределах 7 дней, а только первую и вторую по порядку.
- INTERVAL '7 days' обеспечивает корректное сравнение дат.
@sqlhubpurchases:
purchases (
id SERIAL PRIMARY KEY,
customer_id INT,
purchase_date DATE,
amount NUMERIC
)
Задача:
Найти всех клиентов, у которых вторая покупка произошла не позднее, чем через 7 дней после первой.
Показать:
- customer_id
- first_purchase_date
- second_purchase_date
✅ Решение:
WITH ordered_purchases AS (
SELECT
customer_id,
purchase_date,
ROW_NUMBER() OVER (PARTITION BY customer_id ORDER BY purchase_date) AS rn
FROM purchases
),
first_second_purchases AS (
SELECT
p1.customer_id,
p1.purchase_date AS first_purchase_date,
p2.purchase_date AS second_purchase_date
FROM ordered_purchases p1
JOIN ordered_purchases p2
ON p1.customer_id = p2.customer_id
AND p1.rn = 1
AND p2.rn = 2
)
SELECT *
FROM first_second_purchases
WHERE second_purchase_date <= first_purchase_date + INTERVAL '7 days';
🔍 Пояснение:
- ROW_NUMBER() присваивает каждой покупке номер в пределах одного клиента.
- Мы соединяем первую и вторую покупки клиента через self-join.
- В финальном SELECT фильтруем только те пары, где разница между датами ≤ 7 дней.
⚠️ Важно:
- Клиенты с одной покупкой отфильтруются (у них нет второй).
- Сравнение выполняется через INTERVAL '7 days', чтобы корректно обрабатывать даты.
- Это не поиск любых двух покупок в пределах 7 дней, а именно проверка интервала между первой и второй.
@sqlhubpurchases со следующей структурой:
purchases (
id SERIAL PRIMARY KEY,
user_id INT,
item_id INT,
amount DECIMAL,
purchase_date DATE
)
Задача: Найти user_id пользователя, который совершал покупки в каждый календарный месяц хотя бы один раз за последние 2 года.
Но есть подвох:
пользователь должен был купить в каждый месяц (например, март 2024, апрель 2024, ..., июль 2025 — всего 24 месяца)
пропуски даже в одном месяце — дисквалификация
использовать GROUP BY, FILTER, GENERATE_SERIES, LEFT JOIN и другие техники разрешено
📌 Подумай:
- как сгенерировать список всех нужных месяцев?
- как сопоставить их с месяцами, в которых были покупки у каждого пользователя?
- как убедиться, что пользователь не пропустил ни одного?
🧩 Подсказка: решение можно построить с generate_series() по месяцам и LEFT JOIN к сгруппированным user_id + month.
@sqlhubSQL/PostgreSQL/MySQL — точно стоит попробовать.
▪ GitHub: https://github.com/googleapis/genai-toolbox
@ai_machinelearning_big_data
#AI #ML #aiagent #opensource #MCP #databases #genai
متاح الآن! بحث تيليغرام 2025 — أهم رؤى العام 
