2.2.3. Отбор строк из таблицы базы данных
Одним из основных действий при работе с таблицами нормативно-справочных данных является поиск данных по запросу пользователя. В терминологии реляционной модели запрос на получение данных может быть представлен в виде композиции трех реляционных операций: селекции, проекции и соединения. Селекция – это выбор строк таблицы, удовлетворяющих заданным ограничениям. Проекция – это выбор только нужных колонок таблицы. Соединение – это формирование новой таблицы из нескольких исходных таблиц.
Поиск данных в таблицах выполняется программой "XSEL.EXE". Эта программа предназначена также для выполнения операций проекции и соединения таблиц. Командная строка запуска программы имеет следующий вид :
XSEL [<ключи>] <файл условия отбора> <входной файл> <выходной файл>
Ключи:
-dis - только различные записи;
-l[:<файл листинга>];
-p:<файл параметров>[:<имя таблицы>];
-s:<список таблиц>;
Входной файл, выходной файл и файл параметров являются таблицами и должны быть определены в списке таблиц. Если во входных файлах (файл условия отбора, входной файл и файл параметров) указан не полный путь, то поиск этих файлов выполняется вначале в текущем каталоге, а затем в том каталоге, где расположен список таблиц.
Формирование выходной таблицы осуществляется следующим образом (рис.2.9). Файл условия отбора содержит логическое выражение, которое определяет, какие значения попадут в выходную таблицу. Значения из текущей строки входной таблицы и таблицы параметров составляют набор атрибутов, которые участвуют в записи логического выражения. Если логическое выражение – истина, то из данного набора значений атрибутов формируется строка выходной таблицы.
Операндами логического выражения могут быть целые, вещественные и символьные константы или имена колонок входной таблицы и таблицы параметров. Имени колонки может предшествовать имя таблицы, из которой подставляется значение в логическое выражение. Имя таблицы отделяется от имени колонки символом точка ('.'). Например:
12, 56, 0.25, 30.5, "текст", D, D1, R, A.D, b.r
В выражении используются следующие операции:
арифметические:
- - унарный минус;
+ - сложение;
- - вычитание;
* - умножение;
/ - деление;
** - возведение в степень;
сравнения:
== - равно;
!= - не равно;
> - больше;
>= - больше или равно;
< - меньше;
<= - меньше или равно;
логические:
&& - логическое “и” (конъюнкция);
|| - логическое “или” (дизъюнкция);
! - отрицание.
Таблица параметров
Набор значений атрибутов Выходная таблица Входная таблица
Файл, содержащий логическое выражение условий отбора
Рис. 2.9. Схема формирования выходной таблицы по запросу
В выражении используются следующие функции:
match(<выражение 1>,<выражение 2>) - сравнение строк по шаблону.
Шаблон может содержать следующие специальные символы:
? - заменяет значение одного любого символа в конкретной позиции;
* - заменяет любую последовательность символов;
Заглавные и прописные буквы шаблона не различаются. Например:
“o*” - произвольный текст, начинающийся с 'o';
“*глу*” - произвольный текст, включающий набор символов "глу".
Условие отбора может записываться на нескольких строках. Наличие вначале строки двух точек ("..") означает, что данная строка является комментарием. Пример условия отбора приведен в главе 3.2.1.
- Часть 2. Представление знаний в сапир при решении машиностроительных задач
- 2.1. Особенности переноса деятельности конструктора в компьютерную среду
- 2.1.1. Использование объектно-ориентированного подхода в машиностроении
- 2.1.2. Параметрическая графика
- 2.1.3. Инструментальные средства сапир
- Представление объекта в компьютерной среде
- 2. Задание отношений и условий их применения, выраженные в форме:
- 2.1.4. Повторное использование знаний
- Глава 2.2. Система словарей - справочников данных
- 2.2.1. Словарь понятий предметной области
- 2.2.2. Список таблиц и табличные зависимости
- 2.2.3. Отбор строк из таблицы базы данных
- Глава 2.3. Блоки принятия решений
- 2.3.1. Класс задач, наиболее приспособленных к решению с помощью блоков принятия решений
- 2.3.2. Возможности блоков принятия решений
- 2.3.3. Блоки принятия решений и вычислительные модели
- 2.3.4. Язык спецификации блоков принятия решений
- 2.3.5. Соглашения о связи блоков принятия решений с языком программирования Си
- 2.3.6. Программа – планировщик и планировщик действий
- Глава 2.4. Использование системы t‑flex cad для создания параметрических прототипов чертежей
- 2.4.1. Основные понятия системы t-flex cad
- 2.4.2. Создание параметрических чертежей деталей
- 2.4.3. Создание параметрических сборочных чертежей
- Глава 2.5. Сценарий проектирования объекта
- 2.5.1. Меню расчетов
- 2.5.2. Выполнение расчета по вычислительной модели
- 2.5.3. Запуск проектной процедуры
- 2.5.4. Выбор строки таблицы базы данных в диалоге
- 2.5.5. Запись значений таблицы параметров в файл
- 2.5.6. Считывание значений таблицы параметров из файла