SELECT customer, SUM(price)
FROM tab GROUP BY customer
HAVING SUM(price) IN (SELECT max(sm) FROM ( SELECT sum(price) AS sm FROM tab GROUP by customer ) AS t);
Почему такой запрос возвращает все записи, но если использовать = вместо IN, то все работает корректно?
Так же, если отдельыно выполнить SELECT max(sm) FROM ( SELECT sum(price) AS sm FROM tab GROUP by customer ) AS t и вставить результат в первоначальный запрос, то все будет корректно.
Продвижение своими сайтами как стратегия роста и независимости