Sql Scholl
Распечатать страницу
Перейти на главную Карта сайта Отправить сообщение

Расширенные объединения

Использование псевдонимов таблиц

      Ранее, в разделе, "Создание вычисляемых полей" вы узнали, как можно использовать псевдонимы в качестве ссылок на выбираемые столбцы таблицы. Синтаксис псевдонимов столбцов выглядит следующим образом:

SELECT RTRIM(vend_name) + ' (' + RTRIM(vend_country) + ' ) ' AS vend_title
FROM Vendors
ORDER BY vend_name;

      Помимо возможности применения псевдонимов для имен столбцов и вычисляемых полей, SQL позволяет также использовать псевдонимы вместо имен таблиц. На то есть две основных причины:

      •       более короткий синтаксис SQL;
      •       это позволяет много раз использовать одну и ту же
таблицу в операторе SELECT.

       Обратите внимание на следующий оператор SELECT. В основном он такой же, как в примерах предыдущего раздела , но здесь этот оператор был модифицирован для использования псевдонимов:

SELECT cust_name, cust_contact
FROM Customers AS C, Orders AS 0, OrderItems AS OI
WHERE C.cust_id = O.cust_id
AND 0I.order_num = O.order_num
AND prod id = 'RGANOl';

      Заметьте, что все три таблицы в предложениях FROM имеют псевдонимы. Выражение Customers AS С задает С в качестве псевдонима для таблицы Customers и т.д., что позволяет использовать сокращение С вместо полного слова Customers. В этом примере псевдонимы таблиц были использованы только в предложении WHERE, но псевдонимы можно применять и в других случаях. Их можно использовать в списке SELECT, предложении ORDER BY, а также в любой другой части этого оператора.

      Для того чтобы использовать псевдонимы в СУБД Oracle, просто укажите их без ключевого слова AS (т.е. укажите Customers С вместо Customers AS С).
      Нет также ничего плохого в том, что псевдонимы таблиц используются только во время выполнения запроса. В отличие от псевдонимов столбцов, псевдонимы таблиц никогда не возвращаются клиенту.