В SQL условие WHERE используется для фильтрации строк до применения агрегатных функций (COUNT, SUM, AVG и т.д.). То есть WHERE фильтрует исходные данные, а затем агрегатные функции считаются по отфильтрованным строкам.
Phantom read — это ситуация в транзакциях, когда при повторном выполнении одного и того же запроса в рамках одной транзакции появляются новые строки, которые не были видны при первом чтении.
Для вывода товаров, у которых цена выше средней цены в их категории, можно использовать оконную функцию или подзапрос для вычисления средней цены по каждой категории.
Для подсчёта конверсии по группам эксперимента (expid=90) из события Epic Match Start в Epic Fight Win с правильной атрибуцией через join по времени, нужно:
В PostgreSQL при двух параллельных транзакциях, которые читают и обновляют одно и то же значение счетчика просмотров, возможна ситуация гонки (race condition).
Для решения задачи нужно сравнить дату рождения сотрудников с датой рождения их руководителей. Предположим, что руководитель — это сотрудник с ischief = true в том же departmentid.
NULL обозначает отсутствующее или неизвестное значение. Это не пробел, не ноль и в большинстве СУБД не пустая строка. Для проверки используют IS NULL и IS NOT NULL.