Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Оператор ЗначениеСодержание книги Поиск на нашем сайте
1.1. Критерий отбора данных Для фильтрации данных, содержащихся в запросе, а также для определения условий связи каждой пары таблиц при включении более одной таблицы в запрос используются следующие опции: WHERE <условие связи со второй таблицей> [AND <условие связи с третьей таблицей>...] [AND|OR <условие отбopa>[AND <условие отбора>...]] Каждое <условие связи> имеет формат: <имя первой таблицы>.<поле первой таблицы> Оператор <имя второй таблицы>.<поле второй таблицы>
- Равно == Точно равно > Больше чем < Меньше чем >- Больше или равно <= Меньше или равно <>, !=, # Не равно LIKE Сравнение по шаблону
Кроме того, несколько условий связи соединяются оператором AND. Если в запрос включены две таблицы, а условие связи не указано, то каждая запись из одной таблицы связывается с каждой записью из другой. Пустые поля (.NULL.) в связанных таблицах обрабатываются так же, как и остальные. При использовании в опции WHERE функций DELETED(). RECNO(), RECCOUNT(). FOUND(). EOF() нужно иметь в виду, что они поддерживают имя рабочей области, что может привести к непредсказуемым результатам. В выражении <условие отбора> используются такие же операторы, определяющие отношения, как описано выше и, кроме того, операторы AND и OR - для соединения условий отбора, NOT — для инверсии логических значений, LIKE - для сравнения по шаблону, BETWEEN - для проверки, находится ли значение в указанном диапазоне, IN -для проверки находится ли значение поля, указанного слева от IN, среди перечисленных справа от него значений. Пример вывода всех записей таблицы stud в рабочей области а, у которых содержимое поля country не начинается с символа "У": SELECT * FROM Stud a WHERE a.country NOT LIKE "%У%" Для отбора по подстроке в данном примере используется оператор LIKE "% подстрока %". Следующая команда выводит имена всех студентов, получающих стипендию (spay) в размере от 30 до 50 гривен. SELECT name FROM scholar WHERE spay BETWEEN 30 AND 50 Если отобранные данные должны соответствовать определенным значениям, следует использовать оператор IN<cпиcoк значений>. Например, если нужен список студентов, которые вносили оплату первого числа каждого месяца, выполнить такую команду: SELECT stud.name FROM stud, payment; WHERE stud.name=payment.name; AND payment.dpay IN ({^2004-03-01),{^2004-04-01),{^2004-05-01})
Оператор IN также используют для организации вложенных подзапросов. Подзапрос - это запрос в запросе. Внутренний запрос выполняется первым и обычно используется с опцией WHERE для фильтрации записей. SELECT fch FROM TabNamel a WHERE fcode; IN (SELECT * FROM TahName2 b WHERE a.fn=b.fn)
Чтобы определить, является ли результат подзапроса непустым множеством, используется оператор EXISTS <результат подзапроса>, который выполняет то же, что и опция IN. Например, имена всех студентов, которые выполнили оплату до 01.05.04, помещаюта в курсор temp. SELECT name FROM stud a; WHERE EXISTS (SELECT * FROM payment b; WHERE dpay<(^2004-05-01) ); INTO CURSOR temp Кроме того, для обработки ситуации отрицания существования может использоватш оператор NOT EXISTS. Например, для вывода имен всех студентов из таблицы stud,которых нет среди отчисленных в таблице otch,используются строки: SELECT name FROM stud a WHERE; NOT EXISTS (SELECT * FROM Otch b WHEREa.name=b.name) Условие отбора данных может содержать и неопределенные значения полей. Например чтобы вывести на экран имена студентов, для которых определена сумма оплаты за с% чеиие(поле sum), выполните команду SELECT name PROM stud a WHERE sumIS NOT NULL
|
||||
Последнее изменение этой страницы: 2024-06-17; просмотров: 5; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.137.198.143 (0.007 с.) |