и посмотреть медиа
Data analysis - DA SQL
и посмотреть медиа
Анализ данных: SQL, Python.
Анализ данных: SQL, Python.
AI бот для озвучки текста и клонирования голоса в Telegram. Создавай аудио с помощью нейросети быстро и просто.
Про анализ данных: базы данных, SQL, Python и другое для аналитиков.
FILTER в SQL В SQL конструкция FILTER используется для условной агрегации. Она позволяет применять агрегатные функции (такие как SUM, COUNT, AVG, MAX и т.д.) только к тем строкам, которые удовлетворяют определенному условию, не затрагивая остальные строки в выборке. И тут сразу вспоминаются функции HAVING и WHERE, которые на первый взгляд могут делать то же самое. Но всё же между ними есть отличия: ▶️WHERE: Фильтрует строки до группировки и агрегации. Если строка не прошла WHERE, она не участвует ни в одной агрегации в этом запросе. ▶️HAVING: Фильтрует результаты группировки. Используется после GROUP BY. ▶️FILTER: Фильтрует строки только для конкретной агрегатной функции. Другие агрегатные функции в том же SELECT видят все строки. 🟠Вообще, FILTER используется как более лаконичная и читаемая замена конструкции CASE WHEN. Для примера представим, что необходимо посчитать общую сумму продаж и сумму только оплаченных заказов: SELECT user_id, SUM(amount) AS total_amount, SUM(amount) FILTER (WHERE status = 'paid') AS paid_amount FROM orders GROUP BY user_id Это то же самое, что и: SELECT user_id, SUM(amount) AS total_amount, SUM(CASE WHEN status = 'paid' THEN amount ELSE 0 END) AS paid_amount FROM orders GROUP BY user_id То есть для обоих случаев выведутся 2 столбца в разрезе user_id: в первом будет содержаться общая сумма всех заказов, во втором - сумма заказов только со статусом 'paid'. 🟠В заключение стоит отметить, что FILTER поддерживается в PostgreSQL и постепенно начинает появляться в новых версиях в Microsoft и Oracle (но в MySQL её еще нет).
Открыть канал и посмотреть медиаТолько зарегистрированные пользователи могут делиться своим мнением.
Станьте первым, кто поделится своим впечатлением об этом ресурсе!