|
|||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Проста умова відбору записівВ попередніх прикладах в набір даних попадали всі записи із вказаних таблиць. На практиці набір даних обмежується записами, які задовольняють певним умовам (критеріям) відбору, які задаються з допомогою операнда WHERE. Критерій відбору являє собою логічний вираз, в якому можна використовувати операції: = – дорівнює; > – більше; < – менше; >= – більше-рівне; <= – менше-рівне; <> або!= – не рівне; !> – не більше; !< – не менше; LIKE – порівняння по шаблону; IS NULL – перевірка на нульове значення; IN – перевірка на входження; BETWEEN – перевірка на входження в діапазон. Для операцій порівняння і порівняння по шаблону критерій відбору має наступний вигляд: <Вираз1> <Операція порівняння> <Вираз2>
Використання операторів порівняння Вираз може складатися із імен полів, функцій, констант, значень, знаків арифметичних операцій та круглих дужок. Найпростіші вирази складаються із імен полів або значення. Наприклад:
select cod from obsag where summa >= 1500 Цей оператор створює список співробітників, в яких сума не менше 1500 грн. Наведемо приклад відбору записів за значеннями символьного поля: select prizv from stat where osvita = ‘вища’
У цьому прикладі в операції порівняння враховується регістр символів. Тому слова „Вища” і „вища” не рівні між собою. Різниця в регістрі символів або наявність початкових і кінцевих пробілів прозводить до помилок при відборі записів. У даному випадку критерій відбору доцільно записати так:
where upper(trim (osvita )) = ‘вища’ Функція TRIM знищує початкові і кінцеві пробіли, а функція UPPER приводить символи рядка до верхнього регістру. В результаті освіта „Вища” буде приведена до значення „ВИЩА”.
Використання LIKE Для порівняння рядків замість операцій =,!=, <> можна використовувати операцію LIKE, яка виконує порівняння за частковим співпадінням. Часткове співпадіння значень доцільно перевіряти, наприклад, коли відома тільки початкова частина прізвища:
select prizv from stat where prizv like ‘Ac%’ Тут ми отримаємо список прізвищ, які починаються на “Ac”. Звичайна форма для стовпця текстового типу дозволяє відшукати всі значення вказаного стовпця, які відповідають зразку, заданому „текстовою константою”. У виразах операції LIKE допускається використання шаблону, в якому можна використовувати всі алфавітно-цифрові символи (з врахуванням регістра). При цьому два символи мають спеціальне призначення: % - заміняє будь-яку кількість символів, в тому числі й нульовий; _ - заміняє один символ.
З допомогою шаблона можна виконати перевірку на часткове співпадіння не тільки початкових символів рядка, але й знайти входження заданого фрагмента в будь-яку частину рядкового значення. Наприклад:
select prizv from stat where prizv like '% р %'
Перед операцією LIKE можна використовувати описувач NOT, який змінює результат виконання операції на протилежне значення і перевіряє значення виразів на неспівпадіння. Для перевірки нульового значення виразу служить операція IS NULL, яка має наступний формат:
<Вираз> IS [NOT] NULL Наприклад, select * from stat where is null У цьому запиті відбираються всі поля записів таблиці stat, які мають нульові значення. Використання IN Перевірка на входження значення виразу в список виконується з допомогою операції IN наступного формату:
<Вираз> [NOT] IN <Список значень>
Цю операцію зручно виконувати, якщо вираз може приймати невелику кількість різних значень. Наприклад:
select cod, prizv from stat where osvita in (‘середня’, ‘вища’) У результаті отримаємо вибірку кодів і прізвищ всіх працівників з середньою і вищою освітою. Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.004 сек.) |