Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
курсовая работа / bd / базы данных2222.rtf
Скачиваний:
241
Добавлен:
17.02.2014
Размер:
19.41 Mб
Скачать

Предложение select.

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

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

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

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

  • подчинённый запрос, возвращающий единственное значение для каждой строки результирующей таблицы или не возвращающий ничего (в таком случае значение в этом столбце этой строки будет трактоваться как null).

Предложение from.

В предложении FROM перечисляются спецификаторы таблиц или другие запросы, разделённые запятыми. Каждый спецификатор таблицы идентифицирует таблицу, содержащую данные, которые должен извлечь запрос. Для обозначения таблицы в предложении SELECT (например, в случае, когда в двух таблицах существуют столбцы с одинаковым именем) в рамках предложения FROM есть возможность ввести псевдонимы таблиц. Псевдоним таблицы предоставляет возможность сослаться на таблицу, используя другое имя. Как правило, это используется для повышения читабельности запроса, уже упомянутого случая одинаковых названий столбцов или самообъединения таблиц. Псевдоним указывается непосредственно после названия таблицы в предложении FROM через пробел. После задания псевдонима для таблицы обращение к её колонкам осуществляется при помощи следующего синтаксиса:

псевдоним_таблицы.название_колонки

Примеры применения псевдонимов мы рассмотрим немного позже. Единственное требование, предъявляемое к меткам таблиц и псевдонимам в предложении FROM, состоит в том, что они все должны отличаться друг от друга в рамках одной инструкции SELECT. Стандарт SQL2 допускает вставку ключевого слова AS между именем таблицы и её псевдонимом. Хотя это ключевое слово облегчает чтение предложения FROM, оно поддерживается не во всех СУБД. Дальнейшее обращение к таблице, для которой задан псевдоним, производится только с его использованием.

Запросы

Наиболее простые запросы извлекают данные из столбцов, расположенных в одной таблице базы данных. Инструкция SELECT для простых запросов может состоять только из обязательных предложений. В предложении SELECT перечисляются имена требуемых столбцов; в предложении FROM указывается таблица, содержащая эти столбцы. На практике многие запросы считывают информацию сразу из нескольких таблиц базы данных. Такие запросы называются объединениями. Наиболее общим случаем объединений являются так называемое декартово произведение (или просто произведение) таблиц. Произведение двух таблиц представляет собой таблицу, состоящую из всех возможных комбинаций строк всех участвующих в объединении таблиц. Например, декартовым произведением двух таблиц, одна из которых содержит 4 строки, а другая – 6, будет результирующая таблица, содержащая 24 строки. Аналогично для декартова произведения трёх таблиц, общее количество строк будет определяться как произведение количества строк из каждой. Получить декартово произведение при помощи SQL просто: достаточно не задавать никаких условий объединения в предложении FROM или WHERE. Условия объединения задают критерии, согласно которым из декартова произведения таблиц удаляются не нужные нам строки. На практике декартово произведение, как правило, не может быть использовано в качестве результата запроса, т.к. содержит очень много лишней информации и из всех возможных сочетаний строк таблиц-источников надо получить только удовлетворяющие определённым условиям строки.

Соседние файлы в папке bd