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

Синтаксис оператора выборки

Читайте также:
  1. Б1 2. Линейный оператор в конечномероном пространстве, его матрица. Характеристический многочлен линейного оператора. Собственные числа и собств векторы.
  2. Билет 11. Договор между инициативным и рецептивным туроператорами.
  3. Билет 13 Угол между 2 мя прямыми , условия параллельности и перпендикулярности. Преобразование линейного оператора при переходе к новому базису
  4. Билет 13. Линейные операторы. Матрица линейного оператора.
  5. Билет 27. Жорданов базис и жорданова матрица линейного оператора в комплексном пространстве.
  6. Билет 32. Сопряженный оператор. Существование и единственность. Матрица сопряженного оператора.
  7. Билет 35. Эрмитовы операторы и эрмитовы матрицы. Эрмитого разложение линейного оператора.
  8. Билет 40. Сингулярные числа и сингулярные векторы. Полярное разложение оператора (матрицы).
  9. Билет10 Различные уравнения плоскости, угол между плоскостями. Вид матрицы линейного оператора в базисе из собственных векторов.
  10. В задачах 13.1-13.20 даны выборки из некоторых генеральных совокупностей. Требуется для рассматриваемого признака
  11. Влияние вида выборки на величину ошибки выборки
  12. ВЫБОРКИ, ИХ ВИДЫ И ОСОБЕННОСТИ.

В довольно сильно упрощенном виде оператор выборки данных имеет следующий синтаксис (для некоторых элементов мы дадим не BNF-определения, а словесное описание):

Оператор выборки::=
Табличное выражение
[ ORDER BY
{{ Имя столбца-результата [ ASC | DESC ]} | { Положительное целое [ ASC | DESC ]}}.,..];

Табличное выражение::=
Select-выражение
[
{ UNION | INTERSECT | EXCEPT } [ ALL ]
{ Select-выражение | TABLE Имя таблицы | Конструктор значений таблицы }
]

Select-выражение::=
SELECT [ ALL | DISTINCT ]
{{{ Скалярное выражение | Функция агрегирования | Select-выражение } [ AS Имя столбца ]}.,..}
| {{ Имя таблицы | Имя корреляции }.*}
| *
FROM {
{ Имя таблицы [ AS ] [ Имя корреляции ] [(Имя столбца.,..)]}
| { Select-выражение [ AS ] Имя корреляции [(Имя столбца.,..)]}
| Соединенная таблица }.,..
[ WHERE Условное выражение ]
[ GROUP BY {[{ Имя таблицы | Имя корреляции }.] Имя столбца }.,..]
[ HAVING Условное выражение ]

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

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

Замечание. Раздел HAVING содержит условное выражение, вычисляемое для каждой группы, определяемой списком группировки в разделе GROUP BY. Это условное выражение может содержать функции агрегирования, вычисляемые для каждой группы. Условное выражение, сформулированное в разделе WHERE, может быть перенесено в раздел HAVING. Перенос условий из раздела HAVING в раздел WHERE невозможен, если условное выражение содержит агрегатные функции. Перенос условий из раздела WHERE в раздел HAVING является плохим стилем программирования - эти разделы предназначены для различных по смыслу условий (условия для строк и условия для групп строк).

Замечание. Если в разделе SELECT присутствуют агрегатные функции, то они вычисляются по-разному в зависимости от наличия раздела GROUP BY. Если раздел GROUP BY отсутствует, то результат запроса возвращает не более одной строки. Агрегатные функции вычисляются по всем строкам, удовлетворяющим условному выражению в разделе WHERE. Если раздел GROUP BY присутствует, то агрегатные функции вычисляются по отдельности для каждой группы, определенной в разделе GROUP BY.

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

Функция агрегирования::=
COUNT (*) |
{
{ COUNT | MAX | MIN | SUM | AVG } ([ ALL | DISTINCT ] Скалярное выражение)
}

Конструктор значений таблицы::=
VALUES Конструктор значений строки.,..

Конструктор значений строки::=
Элемент конструктора | (Элемент конструктора.,..) | Select-выражение

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

Элемент конструктора::=
Выражение для вычисления значения | NULL | DEFAULT


1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 |

Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.003 сек.)