Классика баз данных - статьи

       

необходимо найти все данные, включающие


Если, например, необходимо найти все данные, включающие слово Texas, формулировкой запроса будет P.XTEXASY.

Ограниченная выборка с использованием связей. Вывести все зеленые товары, продаваемые отделом игрушек. Формулировка запроса показана на рис. 13. В этом случае пользователь использует и таблицу TYPE, и таблицу SALES, генерируя две пустых схематических таблицы и заполняя их заголовками и требуемыми данными. В этом примере наилучшим образом иллюстрируется важность элементов примера. Здесь один и тот же элемент примера должен быть применен в обеих таблицах, показывая, что если товар из примера, такой как NUT, имеет зеленый цвет, то тот же товар продается отделом игрушек. Только если одновременно выполняются оба условия, товар считается решением. Эквивалентом при ручной обработке была бы следующая процедура: просмотр таблицы TYPE и нахождение товара зеленого цвета, с последующим просмотром таблицы SALES для определения того, продается ли данный товар отделом игрушек. Поскольку в формулировке запроса нет никаких указаний на то, как должен обрабатываться запрос, и в каком порядке должен осуществляться просмотр таблиц, она является нейтральной и симметричной.



Рис. 13. Ограниченная выборка с использованием связей, см.

Поняв концепцию связывания элементов примера пользователь может связывать любое число таблиц и любое число строк одной таблицы, как в следующем примере.

Элементы примера, связанные в одной таблице. Найти имена и зарплаты сотрудников, получающих больше, чем Льюис (Lewis). Запрос показан на рис. 14. Пусть, например, зарплата Льюиса составляет S1, как тогда зовут служащих, зарплата которых больше S1? Порядок строк в примере несущественен: пользователь не обязан каким-либо образом структурировать запрос. Вместо этого существует возможность формулировать запрос в соответствии с особенностями мыслительного процесса конкретного пользователя.



Рис. 14. Элементы примера, связанные в одной таблице, см.

Другим средством Query-by-Example является возможность формирования сложного запроса путем расширения существующего простого запроса.

Содержание  Назад  Вперед