У меня есть запрос, подобный приведенному ниже ...
SELECT
contents.id, contents.title, contents.createdBy,
(SELECT userGroup FROM suser_profile WHERE userId =
(SELECT users.id
FROM
users
WHERE
login = contents.createdBy)
) as userGroupID
FROM
contents
WHERE
contents.id > 0
AND contents.contentType = 'News'
**AND userGroupID = 3**
LIMIT 0, 10
Когда я пытаюсь назначить userGroupID внутри предложения WHERE, SQL вызывает ошибку, сообщая об ошибке SQL (1054): неизвестностолбец "userGroupID" в "где предложение"
тем временем, если я сделаю небольшие изменения, как показано ниже, *
SELECT
contents.id, contents.title, contents.createdBy
FROM
smart_cms_contents
WHERE
contents.id > 0
AND contents.contentType = 'News'
**AND (SELECT userGroup FROM user_profile WHERE userId =
(SELECT users.id
FROM
users
WHERE
users.login = contents.createdBy)
) = 3**
LIMIT 0, 10
, тогда запрос работает нормально.
Я должениспользуйте множественную userGroupID проверку, чтобы 2-й стиль сделал запрос большим, мне нужно иметь стиль, подобный первому, любая помощь приветствуется.
* ПРИМЕЧАНИЕ. Имена таблиц не являются оригинальнымичто я использую в своем проекте.Вы можете игнорировать его, если в названии таблицы есть ошибки.Моя главная задача заключается в использовании значений, назначенных переменной с помощью AS внутри предложения WHERE.
Игнорировать ЗВЕЗДЫ в запросе *