У меня возникла следующая проблема. Я хочу выполнить как sql-оператор, который фильтрует результаты с помощью HAVING. Однако наличие находится в столбце, который вычисляется из функции IF() внутри выбора. Таким образом, сервер MySQL жалуется, что столбец внутри предложения не известен!Идентификатор столбца не работает для группы, где и у меня есть MySQL
EX:
SELECT col1,col2,IF(expr1,expr2,expr3) AS `wantedColumn`
FROM....
WHERE ...
HAVING LENGTH(`wantedColumn)>0
Это как MySQL не может понять, что столбец, возвращаемый если выражение называется wantedColumn ... Если я использую другие столбцы она работает правильно. Но мне нужно отфильтровать это. Какие-либо предложения? Благодаря
Благодарим вас за ответ. Я уже пытался повторить его все выражение в разделе where, и оно работает. Моя проблема заключается не в том, что я вообще не могу использовать псевдоним colum. Потому что, если я использую наличие со ссылкой на другой псевдоним столбца, он работает. Я не могу использовать псевдоним столбца в столбце, создаваемом предложением if. – mitsos1os
Также обратите внимание, что, хотя проблема существует в версии mysql 5.5, проверенной на онлайн-узле, она не существует на локальном сервере mysql 5.6. Он работает так, как должен, и не жалуется на неизвестный атрибут на локальном сервере 5.6. – mitsos1os
В SQLfiddle.com версии 5.5.32 (режим STRICT_TRANS_TABLES) он работает. –