Я не понимаю, почему результат выбора ценового диапазона неверен, если использовать предложение HAVING и функции агрегирования MIN () и MAX ().
Ниже приведен пример:
SELECT * FROM table t
WHERE t.b_id=10
GROUP BY t.t_id
HAVING min(t.price)> 0 AND max(t.price)<16
ORDER BY t.id DESC LIMIT 100 OFFSET 0
В результате также отображаются строки со значениями цен выше 16, что выглядит как выход за пределы диапазона.Может кто-нибудь объяснить мне, почему MySQL не выбирает диапазон?
Если я удаляю MIN () и MAX (), то выбор диапазона кажется правильным.