ВУЗ:
Составители:
Рубрика:
44
WHERE Условие поиска
или Имя столбца * = Имя столбца -- LEFT OUTER JOIN
или Имя столбца * = Имя столбца -- RIGHT OUTER JOIN
Логическое условие может быть произвольным, в том числе и не
связанным с данными. Оно может включать логические операторы NOT, AND и
OR. В ряде случаев, в особенности для сложных запросов предпочтительнее
использовать условия связывания * = (аналог LEFT OUTER JOIN) или = * (аналог
RIGHT OUTER JOIN), которые выполняются
гораздо эффективнее.
При формировании запросов очень часто используются специальные
логические операторы, синтаксис которых записывают следующим образом:
1. Выражение {= | < > | ! = | > | >= | ! >|, = | !<} ALL подзапрос. Здесь
скалярное выражение вычисляется и сравнивается с каждым значением,
возвращаемым подзапросом. Если сравнение дает истину для всех возвращаемых
подзапросом значений, то этот оператор возвращает истину.
2. Если вместо ALL записать SOME или ANY, то результатом
будет
истина, если хотя в одной строке будет выполняться заданное сравнение.
3. Выражение [NOT] BETWEEN вида «ExprL AND ExprH» возвращает
истину, когда значение выражения лежит в диапазоне значений ExprL-
выражения и ExprH-выражения (или не лежит).
4. Оператор EXISTS (Подзапрос) возвращает значение истина, если
подзапрос возвращает хотя бы одну строку.
5. Выражение [NOT] IN (Подзапрос | Выражение [,…n]) возвращает
значение истина, если значение
левого выражения совпадает с одним из значений
подзапроса или списка значений правых выражений (или не совпадает).
6. Выражение [NOT] LIKE «Шаблон[ESCAPEЗнак]» дает истину, если
значение выражения соответствует или не соответствует шаблону, в котором “%”
означает любое количество произвольных символов, “_” – один произвольный
символ, “[символы]” – один из указанных в скобках, “[^ символы]” – все символы,
кроме указанных.
Знак после слова ESCAPE позволяет указать, что следующий за
ним знак шаблона не является управляющим знаком шаблона, т.е. знаком “%”, “_”
и т.д., а представляет обычный знак строки.
Раздел GROUP BY позволяет выполнить группировку строк таблиц по
определенным критериям. Для каждой группы можно выполнить специальные
функции агрегирования, которые будут применены ко всем строкам группы
:
AVG (имя столбца) – среднее значение в группе;
SUM (имя столбца) – сумма значений группы;
MIN (имя столбца) – минимальное значение в группе;
MAX (имя столбца) – максимальное значение в группе;
COUNT (имя столбца) – число строк в группе с непустым значением;
COUNT (*) – число строк в группе, включая и пустые (NULL).
Синтаксис раздела следующий:
GROUP BY Условие группировки --или BY ALL
WHERE Условие поиска или Имя столбца * = Имя столбца -- LEFT OUTER JOIN или Имя столбца * = Имя столбца -- RIGHT OUTER JOIN Логическое условие может быть произвольным, в том числе и не связанным с данными. Оно может включать логические операторы NOT, AND и OR. В ряде случаев, в особенности для сложных запросов предпочтительнее использовать условия связывания * = (аналог LEFT OUTER JOIN) или = * (аналог RIGHT OUTER JOIN), которые выполняются гораздо эффективнее. При формировании запросов очень часто используются специальные логические операторы, синтаксис которых записывают следующим образом: 1. Выражение {= | < > | ! = | > | >= | ! >|, = | !<} ALL подзапрос. Здесь скалярное выражение вычисляется и сравнивается с каждым значением, возвращаемым подзапросом. Если сравнение дает истину для всех возвращаемых подзапросом значений, то этот оператор возвращает истину. 2. Если вместо ALL записать SOME или ANY, то результатом будет истина, если хотя в одной строке будет выполняться заданное сравнение. 3. Выражение [NOT] BETWEEN вида «ExprL AND ExprH» возвращает истину, когда значение выражения лежит в диапазоне значений ExprL- выражения и ExprH-выражения (или не лежит). 4. Оператор EXISTS (Подзапрос) возвращает значение истина, если подзапрос возвращает хотя бы одну строку. 5. Выражение [NOT] IN (Подзапрос | Выражение [,…n]) возвращает значение истина, если значение левого выражения совпадает с одним из значений подзапроса или списка значений правых выражений (или не совпадает). 6. Выражение [NOT] LIKE «Шаблон[ESCAPEЗнак]» дает истину, если значение выражения соответствует или не соответствует шаблону, в котором “%” означает любое количество произвольных символов, “_” – один произвольный символ, “[символы]” – один из указанных в скобках, “[^ символы]” – все символы, кроме указанных. Знак после слова ESCAPE позволяет указать, что следующий за ним знак шаблона не является управляющим знаком шаблона, т.е. знаком “%”, “_” и т.д., а представляет обычный знак строки. Раздел GROUP BY позволяет выполнить группировку строк таблиц по определенным критериям. Для каждой группы можно выполнить специальные функции агрегирования, которые будут применены ко всем строкам группы: AVG (имя столбца) – среднее значение в группе; SUM (имя столбца) – сумма значений группы; MIN (имя столбца) – минимальное значение в группе; MAX (имя столбца) – максимальное значение в группе; COUNT (имя столбца) – число строк в группе с непустым значением; COUNT (*) – число строк в группе, включая и пустые (NULL). Синтаксис раздела следующий: GROUP BY Условие группировки --или BY ALL 44
Страницы
- « первая
- ‹ предыдущая
- …
- 42
- 43
- 44
- 45
- 46
- …
- следующая ›
- последняя »