![]() |
Задавайте вопросы, мы ответим
Вы не зашли.
Друзья, объясните, пожалуйста, почему
Отредактированно jenia0jenia (Сегодня 17:14:18)
Неактивен
При группировке у вас будут группы, а не обычные записи. Не понятно, какое значение из группы брать для сравнения (у одного пользователя могут быть разные order_date). Если все равно, какое значение использовать (но тогда какой смысл сравнивать?), можно указать агрегат ANY_VALUE(). Если нужно отобрать записи по order_date, используйте условие в выражении WHERE, а не HAVING.
Неактивен
estic написал:
При группировке у вас будут группы, а не обычные записи. Не понятно, какое значение из группы брать для сравнения (у одного пользователя могут быть разные order_date). Если все равно, какое значение использовать (но тогда какой смысл сравнивать?), можно указать агрегат ANY_VALUE(). Если нужно отобрать записи по order_date, используйте условие в выражении WHERE, а не HAVING.
ищу клинета, совершившего только один заказ и только '2022-01-05'.
Отредактированно jenia0jenia (Сегодня 18:40:44)
Неактивен
estic написал:
При группировке у вас будут группы
поэтому я могу использовать order_date в функции min-max , а без них не могу?
Неактивен

Да. В части HAVING без группирующих функций можно указывать только те поля, по которым идет группировка (у вас это client_id, client_name)
Кстати, зачем вы делаете группировку ещё и по client_name? client_id ведь уникально.
Условие достаточно только одно: на min или max.
Неактивен