Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Select top(10) WITH TIES




c.FirstName, c.LastName, e.Title, e.Gender, r.Rate

FROM Person.Contact c

INNER JOIN HumanResources.Employee e

ON c.ContactID = e.ContactID

INNER JOIN HumanResources.EmployeePayHistory r

ON r.EmployeeID = e.EmployeeID

ORDER BY Rate DESC;

 

Обратите внимание, что выдается 11 записей!!!!!!

Предложение FROM задает имена таблиц, которые содержат поля, перечисленные в операторе SELECT.

Необязательный параметр псевдонима ( [AS новое_имя]]} [,...n]

В части FROM оператора SELECT допустимо применять синонимы к именам таблицы, если при формировании запроса нам требуется более чем один экземпляр некоторого отношения.

FROM имя_таблицы [[AS] псевдоним] [,...n]), устанавливаемое для имени поля и/или таблицы (обратите внимание, что для таблицы можно не указывать AS).

Поэтому часть FROM может выглядеть следующим образом:

FROM R1 AS A, R1 AS B

или

FROM R1 A, R1 B;

оба выражения эквивалентны и рассматриваются как применения оператора SELECT к двум экземплярам таблицы R1.

Для более удобного чтения лучше использовать ключевое слово AS.

Только два предложения SELECT и FROM являются обязательными.

Пример. Выбрать все поля из таблицы Клиент.

SELECT * FROM Клиент

Пример. Выбрать список всех фирм.

SELECT Клиент.Фирма FROM Клиент

Пример.

SELECT DISTINCT Клиент.Фирма -- удаляются повторяющиеся строки

FROM Клиент

Предложение WHERE определяет, какие блоки данных из приведенных в списке FROM таблиц появятся в результате запроса.

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

· Сравнение: сравниваются результаты вычисления одного выражения с результатами вычисления другого.

· Диапазон: проверяется, попадает ли результат вычисления выражения в заданный диапазон значений.

· Принадлежность множеству: проверяется, принадлежит ли результат вычислений выражения заданному множеству значений.

· Соответствие шаблону: проверяется, отвечает ли некоторое строковое значение заданному шаблону.

· Значение NULL: проверяется, содержит ли данный столбец определитель NULL (неизвестное значение).

Сравнение

В языке SQL можно использовать следующие операторы сравнения: = – равенство; < – меньше; > – больше; <= – меньше или равно; >= – больше или равно; <> – не равно.

Пример.

SELECT * FROM Сделка

WHERE Количество>20

Более сложные предикаты могут быть построены с помощью логических операторов AND, OR или NOT, а также скобок, используемых для определения порядка вычисления выражения.

Вычисление выражения в условиях выполняется по следующим правилам:

· Выражение вычисляется слева направо.

· Первыми вычисляются подвыражения в скобках.

· Операторы NOT выполняются до выполнения операторов AND и OR.

· Операторы AND выполняются до выполнения операторов OR.

Для устранения любой возможной неоднозначности рекомендуется использовать скобки.

Пример. Вывести список товаров, цена которых больше или равна 100 и меньше или равна 150.

SELECT Название, Цена

FROM Товар

WHERE Цена>=100 And Цена<=150

Пример. Вывести список клиентов из Москвы или из Самары.

SELECT Фамилия, ГородКлиента

FROM Клиент

WHERE ГородКлиента=’Москва’ Or

ГородКлиента=’Самара’

Диапазон

Оператор BETWEEN используется для поиска значения внутри некоторого интервала, определяемого своими минимальным и максимальным значениями. При этом указанные значения включаются в условие поиска.

Пример. Вывести список товаров, цена которых лежит в диапазоне от 100 до 150 (запрос эквивалентен примеру выше).

SELECT Название, Цена

FROM Товар

WHERE Цена Between 100 And 150

 

 

Можно использовать отрицание NOT BETWEEN (проверяемое значение находится вне границ заданного диапазона).

Пример. Вывести список товаров, цена которых не лежит в диапазоне от 100 до 150.

SELECT Товар.Название, Товар.Цена

FROM Товар

WHERE Товар.Цена Not Between 100 And 150

 

Или (что эквивалентно)

 

SELECT Товар.Название, Товар.Цена

FROM Товар

WHERE (Товар.Цена<100) OR (Товар.Цена>150)

 

 

Поделиться:





Читайте также:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...