Программирование >>  Sql: полное руководство 

1 ... 25 26 27 [ 28 ] 29 30 31 ... 264


SELECT

ALL-

. DISTINCT-

возвращаемый столбец - I -

-> FROM-1- спецификатор табпицы

. WHERE условие отбора

- GROUP BY

имя стопбца

HAVING условие отбора

-> ORDER BY-x- спвцификатор сортировки

жсичвская диаграмма

Предложение SELECT

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

имя столбца, идентифицирующее один из столбцов, содержащихся в таблицах, которые перечислены в предложении FROM. СУБД просто берет значение этого столбца для каждой из строк исходной таблицы и помещает его в соответствующую строку таблицы результатов запроса;

константу, показывающую, что в каждой строке результатов запроса должно содержаться одно и то же значение;

выражение, показывающее, что СУБД должна вычислять значение, помещаемое в таблицу результатов запроса, по формуле, определенной в выражении.

Все типы возвращаемых столбцов описаны далее в настоящей главе.



предложение FROM

Предложение from состоит из ключевого слова from, за которым следует список спецификаторов таблиц, разделенных запятыми. Каждый спецификатор таблицы идентифицирует таблицу, содержащую данные, которые извлекает запрос. Такие таблицы называются исходными таблицами запроса (и инструкции select), поскольку все данные, содержащиеся в таблице результатов запроса, берутся из них. Во всех запросах, рассматриваемых в настоящей главе, в предложении from указана одна таблица.

Результаты запроса на выборку

Результатом SQL-запроса на выборку всегда является таблица, содержащая данные и ничем не отличающаяся от таблиц базы данных. Если пользователь набирает инструкцию SQL в интерактивном режиме, СУБД выводит результаты запроса на экран в табличной форме. Если программа посылает запрос СУБД с помощью программного SQL, то СУБД возвращает таблицу результатов запроса программе. В любом случае результаты запроса всегда имеют такой же формат, как и обычные таблицы, содержащиеся в базе данных, что иллюстрируется на рис. 6.2. Как правило, результаты запроса представляют собой таблицу с несколькими строками и столбцами. Например, запрос, приведенный ниже, возвращает таблицу из трех столбцов (поскольку список возвращаемых столбцов состоит из трех элементов) и десяти строк (поскольку количество служащих равно десяти):

Вывести список имен, офисов и дат приема на работу всех служащих.

SELECT NAME, REP OFFICE, HIRE DATE FROM SALESREPS

NAME

REP 0FF1CE

HIRE DATE

Bill Adams

12-FEB-88

Mary Jones

12-OCT-89

Sue Smith

lO-DEC-86

Sam Clark

14-JUN-88

Bob Smith

19-MAY-87

Dan Roberts

20-OCT-86

Tom Snyder

NULL

13-JAN-90

Larry Fitch

12-OCT-89

Paul Cruz

Ol-MAR-87

Nancy Angelli

14-NOV-88



Интерактивный SQL

SELECT CITY REGION FROM OFFICES CITY REGION

Программа

Программный SQL

Запрос

Результаты запроса

CITY

Denver New York Chicago Atlanta Los Angeles

REGION

Western Eastern Eastern Eastern Western

Запрос

Рис, 6.2, Табличная структура рвзульт

СУБД

База данных

В отличие от запроса, показанного выше, следующий запрос возвращает одну строку, так как есть всего один служащий, имеющий указанный идентификатор Хотя результаты этого запроса, содержащие всего одну строку, имеют не такой табличный вид, как результаты, содержащие несколько строк, SQL все равно считает их таблицей, состоящей из трех столбцов и одной строки-

Как зовут, а также каковы плановый и фактический объемы продаж служащего с идентификатором ЮТ

SELECT NAME, QUOTA, SALES FROM SALESREPS WHERE EMPLNUM = 107

NAME QUOTA SALES

Nancy Angelli $300,000.00 $186,042.00

В некоторых случаях результатом запроса может быть единственное значение, как в следующем примере

Каково среднее значение фактических объемов продаж по всем служащим компании ?

SELECT AVG (SALES) FROM SALESREPS

AVG(SALES) $289,353.20

Эти результаты запроса также считаются таблицей, которая состоит из одного стблбца и одной строки.



1 ... 25 26 27 [ 28 ] 29 30 31 ... 264

© 2006 - 2025 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика