WWW.REFERATCENTRAL.ORG.UA - Я ТУТ НАВЧАЮСЬ

... відкритий, безкоштовний архів рефератів, курсових, дипломних робіт

ГоловнаІнформатика, Компютерні науки → Запити, фільтри, використання та функціональне призначення - Реферат

Запити, фільтри, використання та функціональне призначення - Реферат


Запити, фільтри, використання
та функціональне призначення
Що таке фільтр
Довідка (Help) дає визначення поняттю "фільтр" так: "Набір умов, які застосовуються для добору підмножини записів чи для сортування записів. У Microsoft Access існують фільтри чотирьох типів: фільтр по виділеному фрагменту, звичайний фільтр, розширений фільтр і фільтр по вводу." У свою чергу, умова відбору визначається як "набір обмежувальних умов, наприклад, = "Україна" (означаюче, що потрібно строкове значення "Україна") чи > 30000, використовуваних для висновку визначеного набору записів при створенні чи запиту фільтра."
Насправді фільтр - це просто логічний вислів. Фільтрація таблиці - це добір тих рядків таблиці, для яких відповідне вираження істинне. Ю.Шафран визначає фільтр як логічне вираження. Потрібно тільки пояснити, як воно будується з "умов". А для цього необхідно розібратися, що таке логічний вислів.
Арифметичні і логічні вираження
Help (довідка) визначає вираження так: "Будь-яка комбінація операторів, констант, значень текстових констант, функцій, імен полів, елементів керуваннячи властивостей, результатом якої є конкретне значення."
Дане визначення є досить складним і не зовсім вірним. Що таке комбінація операторів, констант і т.д.?
Спробуємо знайти більш конструктивне визначення. Щоб не захаращувати виклад непринциповими деталями, ми обмежимося випадком, коли в таблиці всі атрибути - числові (тобто в клітках таблиці можуть стояти тільки числа).
Як арифметичні, так і логічні вираження будуються з деяких "цеглин" за допомогою визначеного набору операцій. У випадку арифметичних виражень "цеглинами" служать числа й атрибути (інших "цеглин" ми для простоти не розглядаємо), а з'єднують їхні звичайні арифметичні операції. Формально арифметичні вираження визначаються так.
1. Будь-яке число чи атрибут є арифметичним вираження.
2. Якщо A - арифметичне вираження, то (A) - теж арифметичне вираження.
3. Якщо А и В - арифметичні вираження, то вираження А+В, А-В, А*В, А/В и А**В теж є арифметичними.
4. Інших арифметичних виражень немає.
От приклади арифметичних виражень: 7, х, 2+2, 2*x+3, 2*(х+3).
Маючи формальне визначення, ми можемо пояснити, чому, скажемо, вираження 2*(х+3) є арифметичним, а вираження 7*+8 арифметичним не є. Дійсно, Для першого з цих виражень, відповідно до правила 1, вираження х і 3 є арифметичними. Звідси, за правилом 2, випливає, що вираження (х+3) теж є арифметичним. За правилом 1, вираження 2 - арифметичне. Виходить, за правилом 3, і вираження 2*(х+3) - арифметичне. Що стосується вираження 7*+8, воно не арифметичне хоча б уже тому, що символ + вимагає арифметичних виражень по обидва боки від себе, а вираження ліворуч від нього виглядає так: 7*. У свою чергу 7* не є арифметичним, оскільки символ * теж по обидва боки вимагає арифметичних виражень, а праворуч просто нічого немає.
Приведене визначення арифметичного вираження конструктивно саме в тому змісті, що дозволяє прямо по тексту без обчислень визначити, арифметичне вираження перед нами чи ні.
Якщо всім атрибутам, що входять в арифметичне вираження, додати числові значення, символи +, - , *, / і ** проінтерпретувати, відповідно, як операції додавання, вирахування, множення, розподіли і зведення в ступінь, і визначити природним образом (тобто як учать у школі) порядок виконання цих дій, то дане арифметичне вираження одержить чисельне значення. Скажемо, якщо значення х и у є, відповідно, 7 і 8, то значенням вираження х+2*у є 23.
Таким чином, визначення того, чи є дане вираження арифметичним, і обчислення значення вираження - це два різних питання.
Перейдемо до визначення логічних виражень. Ми будемо вважати, що "цеглини" логічних виражень мають вид х Т, де х - атрибут, Т - арифметичне вираження, а - один із символів порівняння: = (дорівнює), (не дорівнює), (більше). З'єднуються "цеглини" за допомогою логічних операцій AND, OR і NOT.
Як і для арифметичних виражень, ми хочемо дати формальне визначення. Спочатку визначимо найпростіші логічні вираження, чи атоми.
Визначення 1. Нехай х - атрибут, Т - арифметичне вираження. Тоді вираження х=Т, хТ, хТ називаються атомами.
Тепер можна формально визначити логічні вираження. Ми будемо позначати їх великими латинськими буквами.
Визначення 2.
1. Всякий атом є логічне вираження.
2. Істина і Неправда - логічні вираження.
3. Якщо X - логічне вираження, то вираження, те (X) - теж логічне вираження
4. Якщо Х и У - логічні вираження, то вираження Х AND Y, Х OR Y і NOT Х теж є логічними.
5. Інших логічних виражень немає.
От приклади логічних виражень: NOT х = 7, (х = 2+2) AND у > 2*(х+3).
Тепер переходимо до значень виражень. Значеннями логічних виражень є Істина і Неправда.
Спочатку визначимо значення атомів. Для цього всім атрибутам додамо числові значення й обчислимо значення арифметичного вираження, що входить в атом. Символи =, , інтерпретуються як стандартним образом, як знаки порівняння чисел. Атом приймає значення Істина, якщо істинно відповідне порівняння, у противному випадку значення атома Неправда. Наприклад, якщо значення х и у є, відповідно, 7 і 8, то значенням атома х=х+2*у буде Неправда, тому що насправді 7 не дорівнює 23.
Для обчислення значення логічного вираження, що не є атомом, служать так називані таблиці істинності. Вони дозволяють обчислити значення логічного вираження, якщо відомі значення його підвисловлень. От таблиця істинності для операції AND.
Х Y Х AND Y
Істина Істина Істина
Істина Неправда Неправда
Неправда Істина Неправда
Неправда Неправда Неправда
Она показывает, как, зная значения выражений Х и Y, вычислить значение выражения Х AND Y.
А вот таблицы истинности для OR и NOT:
Х Y Х OR Y
Істина Істина Істина
Істина Неправда Істина
Неправда Істина Істина
Неправда Неправда Неправда
Х NOT Х
Істина Неправда
Неправда Істина
Але і цього ще недостатньо: потрібно, як і для арифметичних операцій визначити порядок виконання логічних операцій, інакше кажучи, визначити їхнє старшинство. Самої старший вважається операція NOT (тобто у вираженні без дужок вона виконується першої), потім йде операція AND, потім операція OR.
Тепер, знаючи значення атомів, ви можете за допомогою цих таблиць обчислити значення будь-якого вираження, побудувавши для нього свою таблицю
Loading...

 
 

Цікаве