select xx as fieldA from ... group by xxx having fieldA is not null
Я обнаружил, что having
не имеет никакого эффектаКак использовать наличие в неагрегированном поле в MySQL?
select xx as fieldA from ... group by xxx having fieldA is not null
Я обнаружил, что having
не имеет никакого эффектаКак использовать наличие в неагрегированном поле в MySQL?
Может быть:
select xx as fieldA from ... where fieldA is not null group by xxx having
поможет вам
Это не сработает, потому что псевдонимы недоступны в 'GROUP BY'. (Они находятся в 'ORDER BY' и' HAVING'). Переход на 'WHERE fieldA NOT NULL' изменит количество сгруппированных строк, возможно, изменив исходное намерение. –
Вы должны включать все агрегатные столбцы в GROUP BY
. 5.7.5 ввел SQL_MODE
от only_full_group_by
, чтобы обеспечить соблюдение таких (хотя и не жалуясь на некоторые случаи, когда это действительно так).
Если у вас есть неагрегатный столбец, код может предоставить любое значение, которое ему нравится для такого столбца (xx
в вашем случае). Учитывая это, тогда как можно было бы сделать рациональный смысл HAVING
.
Это не ошибка; это ошибка пользователя.
Закройте его, это ошибка 5.0 – wamp