Задать вопрос
@NickToot
web developer

Как задать условие для переименованного стобца в SQL?

Всем доброго времени суток! :)

Подскажите пожалуйста как задать условие для переименованного столбца в SQL?
Вот пример как я пытаюсь это сделать:
SELECT user_id, concat(user_name, " ", user_surname, " ", user_patronim) AS fio
FROM users
WHERE fio like 'Абв%'

Получаю ошибку:
#1054 - Unknown column 'fio' in 'where clause'

В интернете решений не нашел.
  • Вопрос задан
  • 336 просмотров
Подписаться 1 Оценить Комментировать
Решения вопроса 1
qonand
@qonand
Software Engineer
в данном случае fio это алиас, MySQL не умеет делать WHERE по алиасам, поэтому фам нужно
либо переписать конструкцюю WHERE на
WHERE concat(user_name, " ", user_surname, " ", user_patronim) like 'Абв%'
либо вместо WHERE использовать конструкцию HAVING, например:
HAVING fio like 'Абв%'
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@cheshirerabbit
Пусть использует WHERE concat(user_name, " ", user_surname, " ", user_patronim) like 'Абв%'
Потом проблем не будет с агрегацией лишних данных, когда решит добавить GROUP BY
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы