![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
Инструкция SQL состоит из нескольких частей, называемых предложениями. Каждое предложение в инструкции SQL имеет свое назначение.
WHERE –определяет условия отбора полей, которым должны соответствовать все записи, включаемые в результаты, это не обязательное поле.
Когда необходимо использовать данные для ограничения числа записей, возвращаемых запросом, можно использовать условия. Условие запроса похоже на формулу-это строка, которая может включать ссылки на поля, оператор и константа. Условие запроса является разновидностью выражение.
SELECT поле1, …, поле2, …,
полеN
FROM таблица1
WHERE условие;
Предложение WHERE имеет следующий базовый синтаксис:
WHERE поле = условие
Условие в предложении WHERE необязательно должно быть основано на равенстве значений. Можно использовать другие операторы сравнения, такие как «больше чем» (>) или «меньше чем» (<), например WHERE [Цена]>100. Более сложные предикаты могут быть построены с помощью логических операторов AND, OR или NOT, а также скобок. В условиях отбора могут применяться операторы принадлежности к диапазону или множеству или соответствия шаблону или значению NULL:
IN (NOT IN) – используется для сравнения некоторого значения со списком заданных значений;
BETWEEN (NOT BETWEEN) –используется для поиска значения внутри некоторого интервала, определяемого своими минимальным и максимальным значениями;
LIKE – можно выполнять сравнение выражения с заданным шаблоном, где допускается
использование символов-заменителей:
* – вместо этого символа может быть подставлено любое количество произвольных
символов;
? – заменяет один символ строки;
[ ] – вместо символа строки будет подставлен один из возможных символов, указанный в этих
ограничителях;
[!] – вместо соответствующего символа строки будут подставлены все символы, кроме указанных в ограничителях;
ISNULL (ISNOTNULL) – для проверки пустого значения.
Иногда необходимо объединить источники данных на основе полей с совпадающими значениями, но разными типами данных. Например, поле в одной таблице может иметь числовой тип данных, а сравнить его нужно с полем из другой таблицы, которое имеет текстовый тип данных.
Создать объединение между полями, имеющими разные типы данных, нельзя. Чтобы объединить данные их двух источников на основе значений полей с разными типами данных, нужно создать предложение WHERE, в котором одно поле используется с ключевым словом LIKE как условие отбора для другого поля.
Предположим, например, что необходимо использовать данные из Таблицы1 и Таблицы2, но только в том случае, когда данные в Поле1 (текстовое поле в Таблице1) совпадают с данными из Поля2 (числовое поле в Таблице2). Предложение WHERE будет выглядеть следующим образом:
WHERE поле1 LIKE поле2
HAVING – фильтрует группы строк объекта в соответствии с указанным условием. В инструкции SQL, которая содержит статистические функции, определяет условия, применяемые к полям, для которых в предложении SELECT вычисляется сводное значение. Не обязательное поле
Если необходимо указать условия для ограничения результатов, но поле, к которому их требуется применить, используется в статистической функции, предложение WHERE использовать нельзя. Вместо него следует использовать предложение HAVING. Предложение HAVING работает так же, как и WHERE, но используется для статистических данных.
Запрос может включать и предложение WHERE, и предложение HAVING, при этом условия отбора для полей, которые не используются в статистических функциях, указываются в предложении WHERE, а условия для полей, которые используются в статистических функциях, — в предложении HAVING.
При помощи HAVING отражаются все предварительно сгруппированные посредством GROUP BY блоки данных, удовлетворяющие заданным в HAVING условиям.
SELECT поле1, …, итоговая
функция AS имя для
вычисляемого поля
FROM таблица1
GROUP BY поля группировки
HAVING условие;
Дата публикования: 2015-02-03; Прочитано: 565 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!