SQLсервер в Linux -самостоятельное освоение пакета

         

Выборка из подзапроса



Листинг 4.28. Выборка из подзапроса

booktown=# SELECT 'test' AS test, id

booktown-# FROM (SELECT * FROM books)

booktown-# AS example_sub_query;

test | id

test | 7808

test | 4513

test | 4267

test | 1608

test | 1590

test | 25908

test | 1501

test | 190

test | 1234

test | 2038

test | 156

test | 41472

test | 41473

test | 41477

test | 41478

(15 rows)

Странность запроса в листинге 4.28 заключается в том, что общий результат принципиально не отличается от прямой выборки из таблицы books, поскольку результат подзапроса идентичен ее содержимому. Строковая константа из одной команды SELECT комбинируется с данными из набора, полученного другой командой SELECT. Более реалистичный пример использования подзапросов приведен ниже в разделе «Подзапросы», но сначала необходимо лучше разобраться в том, как работает команда SELECT.

Примечание 1
Примечание 1

Необязательное ключевое слово ONLY перед именем таблицы, которая является базовой по отношению к другим таблицам, означает, что выборка из производных таблиц не выполняется (наследование рассматривается в главе 7).



Содержание раздела