Киберфак – бесплатно скачать презентации PowerPoint, лекции, рефераты, шпоры, курсовые cyberfac logo
cyberfac.ru
На главную | Регистрация | Вход
  Статьи  
Главная » Статьи » Базы данных » Базы данных

Основные правила при создании подзапросов

Полезная статья? Пожалуйста, поставьте "+"
Базы данных - Содержание

Подзапрос - это запрос, помещенный внутри другого запроса; его называют также вложенным запросом. Подзапросы возвращают данные, которые используются основным запросом для дальнейшего ограничения выбираемой информации. Вложенный подзапрос - это оператор SELECT, заключенный в круглые скобки и вложенный в команду языка DML, и использующийся в качестве источника данных для параметров SELECT, FROM, WHERE и HAVING.

Каждый подзапрос в свою очередь может содержать в себе подзапрос и т.д. В каждой СУБД существуют ограничения на количество вложенных подзапросов, но обычно этих ограничений хватает, чтобы реализовать задачи любой известной сложности.
Вложенные подзапросы всегда применяются тогда, когда для выполнения основного запроса необходимо использовать данные, находящиеся в той же или других таблицах, которые невозможно получить при помощи соединения таблиц.
Все подзапросы можно условно разделить на однострочные и многострочные, а также на простые и коррелированные.
Однострочные подзапросы возвращают в качестве результата всегда одну строку, не больше и не меньше, поэтому над результатами выполнения таких запросов можно использовать операции сравнения.
Многострочные запросы в общем случае могут вернуть любое количество строк, поэтому над результатами таких подзапросов нельзя использовать операции сравнения (если один из аргументов операции сравнения будет являться пустым множеством или множеством, состоящим более чем из одного элемента, то запрос завершиться с ошибкой). Для таких подзапросов применимы операторы IN и EXISTS.

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

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

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

Существует несколько правил, которым должны следовать подзапросы :
- Подзапросы должны быть заключены в круглые скобки.
- Предложение SELECT подзапроса , как правило , содержит только один столбец; исключением является случай, когда в сравнении участвует не-сколько столбцов основного запроса.
- Предложение ORDER BY может быть использовано только в основном запросе для выполнения всех действий, связанных с упорядочением данных в подзапросе , следует применять предложение GROUP BY.
- Подзапросы , возвращающие более одной строки данных, могут использоваться только с многозначными операторами, такими как, например, оператор IN.
- Не допускается использование в основном запросе оператора BETWEEN; этот оператор может быть использован только внутри подзапроса.
Базовый синтаксис подзапроса имеет следующий вид:

SELECT ИМЯ_СТОЛБЦА
FROM ТАБЛИЦА
WHERE ИМЯ_СТОЛБЦА = (SELECT ИМЯ_СТОЛБЦА
FROM ТАБЛИЦА
WHERE УСЛОВИЯ);

Категория: Базы данных | Добавил: Ni-Cd (09 Декабря 2011)
Просмотров: 1581 | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
  Полезные материалы  

В нашем каталоге файлов можно найти много полезной информации. Также советуем заглянуть в каталог статей: в нем есть полезные статьи по темам: Экономика предприятия, Общая экономика, Финансы и Кредит, также Словарь терминов по экономике, Маркетинг, Бухучет и Мировая экономика
Также есть полезная страница Факультеты МИФИ, которая расскажет о том, какие есть в МИФИ факультеты.
Меню
 

Навигация
Базы данных [64]
 

Поиск
 

Онлайн
Онлайн всего: 2
Гостей: 2
Пользователей: 0
 

Статистика


Рейтинг@Mail.ru

 


2007 - 2024 © Ni-Cd. All Rights Reserved