Основные принципы запросов
Запрос представляет собой обращение к данным, сохраненным в SQL Server 2005. Запрос может быть произведен с помощью нескольких форм:
- Пользователь MS Query или Microsoft Access может использовать графический интерфейс пользователя (GUI) для выбора данных, которые пользователь хочет видеть, из одной или более таблиц SQL Server.
- Пользователь среды SQL Server Management Studio или программы osql может выполнить инструкцию SELECT.
- Клиент или приложение промежуточного уровня, например приложение Microsoft Visual Basic, могут отображать данные из таблицы SQL Server в связанный элемент управления, например в сетку.
Хотя запросы имеют различные способы взаимодействия с пользователем, они все выполняют одну задачу: представляют пользователю результирующий набор инструкции SELECT. Даже если пользователь никогда не указывает инструкцию SELECT, так как обычно работает с графическими инструментами, например с конструктором запросов Visual Studio, программное обеспечение клиента преобразовывает каждый пользовательский запрос в инструкцию SELECT, которая отправляется к SQL Server.
Инструкция SELECT извлекает данные из SQL Server и возвращает их пользователю в одном или более результирующих наборах. Результирующий набор — это табличное расположение данных из инструкции SELECT. Похожий на таблицу SQL, результирующий набор состоит из столбцов и строк.
Полный синтаксис инструкции SELECT сложен, но большинство инструкций SELECT описывает четыре первичных свойства результирующего набора.
- Количество и атрибуты столбцов в результирующем наборе. Следующие атрибуты должны быть определены для каждого столбца результирующего набора.
- Тип данных столбца.
- Размер столбца, а для числовых столбцов еще точность и масштаб.
- Источник значений данных, возвращенных в столбец.
- Таблицы, из которых результирующий набор данных извлечен, и любые логические отношения между таблицами.
- Условия, которым строки в исходных таблицах должны соответствовать для выборки инструкцией SELECT. Строки, не соответствующие условиям, игнорируются.
- Последовательность, в которой упорядочиваются строки результирующего набора.
Следующая инструкция SELECT
находит идентификатор продукта, название и цену по прейскуранту любых продуктов, чья учетная цена превышает $40
:
SELECT ProductID, Name, ListPrice
FROM Production.Product
WHERE ListPrice > $40
ORDER BY ListPrice ASC
Имена столбцов, перечисленные после ключевого слова SELECT (ProductID
, Name
и ListPrice
), образуют список выборки. Этот список определяет, что результирующий набор имеет три столбца, и каждый столбец имеет имя, тип данных и размер связанного столбца в таблице Product
. Поскольку предложение FROM
определяет только одну основную таблицу, все имена столбцов в инструкции SELECT
ссылаются на столбцы в этой таблице.
Предложение FROM
перечисляет таблицу Product
как одну таблицу, из которой должны быть извлечены данные.
Предложение WHERE
указывает условие, что данной инструкции SELECT
соответствуют только строки в таблице Product
, в которых значение столбца ListPrice
больше, чем $40
.
Предложение ORDER BY
указывает, что результирующий набор должен быть отсортирован по возрастающей последовательности (ASC
), основанной на значении в столбце ListPrice
.
См. также
Основные понятия
Другие ресурсы
FROM (Transact-SQL)
SELECT (Transact-SQL)
Предложение WHERE (Transact-SQL)