Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Структура оператора SELECT.






 

Обработка элементов оператора SELECT выполняется в следующей последовательности:

  1. SELECT – устанавливается, какие столбцы должны присутствовать в выходных данных;
  2. FROM – задает имена таблиц и просмотров, которые содержат поля, перечисленные в операторе SELECT.
  3. WHERE – выполняется фильтрация строк объекта в соответствии с заданными условиями;
  4. GROUP BY – образуются группы строк имеющих одно и то же значение в указанном столбце;
  5. HAVING – фильтруются группы строк объекта в соответствии с указанным условием;
  6. ORDER BY – определяется упорядоченность результатов выполнения операторов.

 

Порядок предложений и фраз в операторе SELECT не может быть изменен. Только два предложения SELECT и FROM являются обязательными, все остальные могут быть опущены. SELECT – закрытая операция: результат запроса к таблице представляет собой другую таблицу.

 

Удаление повторов:

 

SELECT distinct surname

FROM employee

 

Предложение SELECT помимо списка полей может иметь один из двух предикатов.

Предикат ALL (Всё) задаёт включение в выходной набор всех дубликатов строк. Этот предикат действует по умолчанию.

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

 

SELSCT surname, dolgnost

FROM dolgnosti, employee

WHERE dolgnosti.id_dolg = employee.iddolg and employee.iddepartment = 1

 

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

После имени таблицы через пробел можно указать её сокращенное название – псевдоним.

Вместо имени можно использовать её псевдоним.

 

SELSCT surname, d.dolgnost

FROM dolgnosti d, employee e

WHERE d.id_dolg = e.iddolg and e.iddepartment = 1

 

Псевдоним можно создавать не только для таблиц, но и для колонок.

 

SELSCT surname, d.dolgnost “Должность”

FROM dolgnosti d, employee e

WHERE d.id_dolg = e.iddolg and e.iddepartment = 1

 

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

 

Существует пять основных типов условий поиска (или предикатов):

  1. Сравнение: сравниваются результаты вычисления одного выражения с результатами вычисления другого.
  2. Диапазон: проверяется, попадает ли результат вычисления выражения в заданный диапазон значений.
  3. Принадлежность множеству: проверяется, принадлежит ли результат вычислений выражения заданному множеству значений.
  4. Соответствие шаблону: проверяется, отвечает ли некоторое строковое значение заданному шаблону.
  5. Значение NULL: проверяется, содержит ли данный столбец определитель NULL (неизвестное значение).

 

Сравнение:

 

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

SELECT * FROM Сделка WHERE Количество> 20

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

 

SELECT * FROM Сделка WHERE Количество> 20

 

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

 

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

  1. Выражение вычисляется слева направо.
  2. Первыми вычисляются подвыражения в скобках.
  3. Операторы NOT выполняются до выполнения операторов AND и OR.
  4. Операторы AND выполняются до выполнения операторов OR.

 

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

 

Выбрать все наименования на букву Ш.

 

SLECT i.*

FROM items i

Where (i.item > = ‘ш’) and (i.tem < ‘щ’)

 

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

 

SELECT * FROM employee

WHERE salary > =10000 and salary < = 15000

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.