Вы не псевдоним таблицы, вы псевдоним экземпляра ссылки на таблицу.
Это позволяет самостоятельные объединения и т. Д., Как у вас есть несколько экземпляров ссылок на одну и ту же физическую таблицу.Это не тот случай, когда каждый AS
дает этой таблице новое имя в другом месте, это просто псевдоним для ссылки на эту конкретную ссылку.
В вашем случае есть два ограничителя show ...
Вставляемая таблица сама по себе не является частью запроса select, она не является набором ссылок так же, как foo
, bar
или baz
например.Таким образом, вы вообще не можете использовать псевдоним (потому что в этом нет необходимости, на него нельзя ссылаться).
Кроме того, даже если это так, вы не можете ссылаться на всю таблицу через псевдоним.Вы ссылаетесь на поле, как часть запроса, проходящего через множество.Например, это тоже не работает ...
SELECT * FROM myTable AS xxx WHERE id = (SELECT MAX(id) FROM xxx)
Последний пример можно обойти, используя ...
WITH xxx AS (SELECT * FROM myTable)
SELECT * FROM xx WHERE id = (SELECT MAX(id) FROM xxx)
Но это все же возвращает нас к первомуТочка зрения, на вставляемую таблицу никогда не ссылаются в части запроса вашего оператора.
Единственный способ приблизиться - создать представление ...