icrosoft дуже не любить дозволяти користувачам копатися в "підводної частини айсберга". Вона розлого пояснює, як з даним поняттям працювати, але неохоче і вкрай невиразно пояснює, що ж це поняття означає. p> Help визначає фільтр так. " Набір умов, які застосовуються для відбору підмножини записів або для сортування записів. В Microsoft Access існують фільтри чотирьох типів: фільтр по виділеному фрагменту, звичайний фільтр, розширений фільтр і фільтр по вводу . "У свою чергу, умова відбору визначається як " набір обмежувальних умов, наприклад, = "Росія" (що означає, що потрібно строкове значення "Росія") або> 30000, використовуваних для висновку визначеного набору записів при створенні запиту або фільтра. "
Отже, фільтр - це набір (Або навіть набір наборів) умов виду = "Росія" або> 30000. І що це таке? Ну, досвідчений читач (або користувач) може здогадатися, що насправді йдеться про умови виду Х = "Россия" або У> 30000, де Х і У - це, швидше за все, атрибути. Але що значить "набір"? Просто сукупність таких умов? Ні, скаже вдумливий учень, тут щось не так. Це все одно, що сказати, що будинок - це сукупність цеглин. Але ж все справа в тому, як ці цеглини (або умови) зв'язані! Скажімо, Х = "Росія" AND У> 30000 - це одне, а Х = "Росія" OR У> 30000 - зовсім інше. p> Приблизно на такому ж рівні визначається фільтр і в "дорослій" літературі.
У довіднику [2] на стор 191 говориться: " Фільтр - це набір умов, які можна застосувати до даними. Застосування іншого фільтра до результату попереднього додатково урізує результуючий набір даних. " У тому ж довіднику на стор 395 фільтр визначається так. " Режим, що дозволяє відображати тільки деякі записи таблиці. У програмі Access за допомогою фільтра можна також відсортувати інформацію. У відмінності від запитів, фільтри не є об'єктами, і не з'являються у вікні бази даних. "
Так що ж таке фільтр: режим або набір умов? Ні те, ні інше. Виявляється це - щось! p> "Фільтр - щось, відсіває певні елементи, - одне або декілька умов, яким повинна задовольняти запис, щоб потрапити на екран. " ([8], стор 72)
Насправді фільтр - це просто логічне вираження. Фільтрація таблиці - це відбір тих кортежів, для яких відповідне вираження істинне.
Тут ми згодні з Ю.Шафріним, визначальним фільтр як логічне вираження. Потрібно тільки пояснити, як воно будується з горезвісних "умов". Але перш нам доведеться згадати, що таке арифметичне вираз.
Арифметичні і логічні вираження
Help визначає вираз так. "Будь-яка комбінація операторів, констант, значень текстових констант, функцій, імен полів, елементів керування або властивостей, результатом якої є конкретне значення. "
Нас таке визначення не влаштовує. Воно не конструктивно. Ми хотіли б, щоб з вигляду тексту можна було б дізнатися, чи є воно виразом. ...