Условия выбора данных в БД и сложные логические выражения

advertisement
1.
2.
3.
Операторов сравнения:
1.
=, <, >, <>, BETWEEN, IN, LIKE, AND, OR, NOT
1.
2.
3.
4.
Константы (например, 365),
Текстовые строки (например, “ИНФОРМАТИКА” ),
Символы (например, “$”)
Cсылки на значения полей (например, “[имя
таблицы]![имя поля]”)
Операндов, используемых для сравнения:
Операторы шаблона:
* - заменяет неизвестное количество символов
? – заменяет один символ
Позволяет задать интервал для числового
значения.
Пример:
BETWEEN 10 AND 100 -Задает интервал от 10 до
-
100
Between #1/1/2007# And #12/31/2007#
-
Позволяет выполнить проверку на
равенство любому значению из списка,
который задается в круглых скобках.
Пример:
IN
(“Математика”,”Информатика”,”История”)
- Значение в поле должно совпадать с одним
из перечисленных
Позволяет использовать образцы,
использующие символы шаблона, при
поиске в текстовых полях.
Пример:
LIKE “Иванов*”
-
Значение в поле должно начинаться с
Иванов
А дальше могут располагаться любые
символы
-
Позволяет объединить два условия отбора
через логическую операцию И
(конъюнкцию)
Пример:
-
Позволяет объединить два условия отбора
через логическую операцию ИЛИ
(дизъюнкцию)
Пример:
-
Задает противоположное значение для
текущего значения поля (логическое
отрицание
-
Пример:
ЗАПИСИ
УСЛОВИЕ
Точно соответствуют определенному значению, например, «Китай»
"Китай"
Не соответствуют определенному значению, например, «Мексика»
Not "Мексика"
Начинаются с заданной строки символов, например «С»
Like С*
Не начинаются с заданной строки символов, например «С»
Not Like С*
Содержат заданную строку, например «Корея»
Like "*Корея*"
Не содержат заданную строку, например «Корея»
Not Like "*Корея*"
Заканчиваются заданной строкой, например «ина»
Like "*ина"
Не заканчиваются заданной строкой, например «ина»
Not Like "*ина"
Содержат пустые значения (значение отсутствует)
Is Null
Не содержат пустых значений
Is Not Null
Содержат пустую строку
"" (прямые кавычки)
Не содержат пустую строку
Not ""
Содержит нулевые или пустые значения
"" Or Is Null
Ненулевые и непустые
Is Not Null And Not ""
При сортировке в алфавитном порядке следуют за определенным
значением, например «Мексика»
>= "Мексика"
Входят в определенный диапазон, например от А до Г
Like "[А-Г]*"
Совпадают с одним из двух значений, например «Словакия» или «США»
"Словакия" Or "США"
Содержат одно из значений, указанных в списке
In("Франция", "Китай",
"Германия", "Япония")
Соответствуют заданному шаблону
Like "Лив??"
ЗАПИСИ
УСЛОВИЕ
РЕЗУЛЬТАТ ЗАПРОСА
Точно соответствуют определенному
значению, например 100
100
Записи, в которых цена единицы продукта составляет 100
рублей.
Не соответствуют значению,
например, 1000
Not 1000
Записи, в которых цена единицы продукта не равна 1000
рублей.
Содержат значение, которое меньше
заданного, например 100
< 100
<= 100
Записи, в которых указана цена единицы меньше 100
рублей (<100). Второе выражение (<=100) позволяет
отобразить записи, в которых цена единицы меньше либо
равна 100.
Содержат значение, которое больше
заданного, например 99,99
>99,99
>=99,99
Записи, в которых указана цена единицы больше 99,99
рублей (<99,99). Второе выражение позволяет отобразить
записи, в которых цена единицы больше либо равна 99,99.
Содержат одно из двух значений,
например 20 или 25
20 or 25
Записи, в которых цена единицы равна 20 или 25 рублям.
Содержат значение, которое входит в
определенный диапазон
>49.99 and <99.99
-илиBetween 50 and 100
Записи, в которых указана цена единицы в диапазоне
между 49,99 и 99,99 рублей (сами эти значения не
включаются в результаты).
Содержат значение, которое не входит <50 or >100
в определенный диапазон
Записи, в которых цена единицы не входит в диапазон от
50 до 100 рублей.
Содержит одно из заданных значений In(20, 25, 30)
Записи, в которых цена единицы равна 20, 25 или 30
рублям.
Записи, в которых цена единицы заканчивается на цифры
4,99, например 4,99, 14,99, 24,99 рублей и т. Д.
Содержат значение, которое
заканчивается на заданные цифры
Like "*4,99"
Содержат пустые (или отсутствующие) Is Null
значения
Записи, в которых поле «Цена» не заполнено.
Содержат непустые значения
Записи, в которых поле «Цена» заполнено.
Is Not Null
ЗАПИСИ
УСЛОВИЕ
РЕЗУЛЬТАТ ЗАПРОСА
Точно соответствуют определенному
значению, например 02.02.2006
#02.02.2006#
Записи об операциях, совершенных 2 февраля
2006 г. Значения даты должны быть окружены
знаками #, чтобы Access мог отличить значения
даты от текстовых строк.
Не соответствуют определенному
значению, например 02.02.2006
Not #02.02.2006#
Записи об операциях, совершенных в любой
день, кроме 2 февраля 2006 г.
Содержат значения, которые
предшествуют определенной дате,
например 02.02.2006
< #02.02.2006#
Записи об операциях, совершенных до 2
февраля 2006 г.
Содержат значения, которые следуют
за определенной датой, например
02.02.2006
> #02.02.2006#
Записи об операциях, совершенных после 2
февраля 2006 г.
Содержат значения, которые входят в
определенный диапазон дат
>#02.02.2006# and <#04.02.2006#
Записи об операциях, совершенных между 2 и 4
февраля 2006 г.
Для фильтрации по диапазону значений можно
также использовать оператор Between.
Например, выражение Between #02.02.2006#
and #04.02.2006# идентично выражению
>#02.02.2006# and <#04.02.2006#.
Содержат значения, которые не входят >#02.02.2006# and <#04.02.2006#
в определенный диапазон
Записи об операциях, совершенных либо до 2
февраля либо после 4 февраля 2006 г.
Содержат одно из двух заданных
значений, например, 02.02.2006 или
03.02.2006
#02.02.2006# or #03.02.2006#
Записи об операциях, совершенных либо 2
февраля, либо 3 февраля 2006 г.
Содержит одно из заданных значений
In (#01.02.2006#, #01.03.2006#,
#01.04.2006#)
Записи об операциях, совершенных 1 февраля,
1 марта или 1 апреля 2006 г.
Фильтр пустых (или отсутствующих)
значений
Is Null
Записи, в которых дата операции отсутствует.
Фильтр непустых значений
Is Not Null
Записи, в которых дата операции указана.
Тема: Условия выбора и сложные логические выражения






Открыть БД «Абитуриент.mdb».
Создать запрос для выбора фамилии, имени и школы для
всех абитуриентов, окончивших школы 44 и 59.
Создать запрос для выбора всех абитуриентов, не учившихся
на подготовительных курсах и получивших «двойку» на
экзамене по математике или информатике (вывести все поля
таблицы).
Создать запрос для выбора фамилии, даты рождения и всех
оценок абитуриентов, получивших на экзаменах только
«четвёрки» и «пятёрки».
Создать запрос для выбора фамилии и даты рождения
юношей-абитуриентов, родившихся в 1990 году.
Создать запрос для выбора фамилии и всех оценок
абитуриентов, набравших сумму баллов не менее 13.
1. Открыть БД «Абитуриент1.mdb».
2. Создать запрос для вывода на экран полей фамилия,
факультет, название специальности для абитуриентов,
поступающих на математический и физический факультеты и
окончивших подготовительные курсы.
 3. Создать запрос для вывода на экран фамилии, факультета и
суммы баллов для абитуриентов, набравших в сумме более 12
баллов за три экзамена.
 4. Создать запрос для вывода на экран фамилии, факультета,
оценки за 1 экзамен, оценки за 2 экзамен, оценки за 3
экзамен для всех абитуриентов, у которых оценка за 3
экзамен выше среднего балла за все экзамены.
 5. Создать запрос для вывода на экран фамилии, даты
рождения, названия специальности и факультета для
абитуриентов всех факультетов, кроме физического,
родившихся в 1991 году.


Учебник Семакина, параграф 14.
ЦОР 9_125
ЦОР 9_124
Download