paus
@paus
Backend-разработчик

Как проверить id из alias?

Добрый день!
У меня вот такой запрос:

(SELECT
    T0.ID ID,
    T0.ClientID client_id,
    T0.ClassID ClassID,
    T0.SeniorID SeniorID,
    T0.DNumber DNumber,
    (SELECT
        NotEmptyStr(SO1.fullName, SO1.name) FullName$
    FROM
        ActivityDirections SO1
    WHERE
      SO1.ID = T0.ActivityDirection) AutoAlias_10750549,
    (SELECT
	  SO1.ID id_type
	  FROM
	     ActivityDirections SO1
	  WHERE SO1.ID = T0.ActivityDirection
	) typeid
.....


Есть alias typeid, который я хочу проверить в условии WHERE:
WHERE BLABLABLA AND typtid.id_type IN (192922, 19333, 2323)


Но у меня не получается это сделать, потому что по стандарту SQL альясы нельзя включать в поле WHERE.
Мне нужно проверить SO1.ID в основном запросе к TO. Как это сделать?
  • Вопрос задан
  • 2417 просмотров
Пригласить эксперта
Ответы на вопрос 1
zs000
@zs000
Если я тебя правильно понял.
select *
  from
(
  SELECT
        T0.ID ID,
        T0.ClientID client_id,
        T0.ClassID ClassID,
        T0.SeniorID SeniorID,
        T0.DNumber DNumber,
        (SELECT NotEmptyStr(SO1.fullName, SO1.name) FullName$
           FROM ActivityDirections SO1
          WHERE SO1.ID = T0.ActivityDirection
        ) as AutoAlias_10750549,
        (SELECT SO1.ID id_type
           FROM ActivityDirections SO1
          WHERE SO1.ID = T0.ActivityDirection
        ) as typeid
    FROM T0
) x
 where x.typeid IN (192922, 19333, 2323)
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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