Организация данных и структуры данных
Метод обменной сортировки с выбором
Метод турнирной сортировки
Методом квадратичной сортировки
Метод вставки
Методы Замещения
Слияние рассортированных подфайлов
Осциллирующей сортировки
Многофазная сортировка
Сравнение методов внешней сортировки
Генераторы программ сортировки слияния
Информация и ее представление в вычислительных машинах
Ассоциативная структура
Последовательная структура
Связанный список
Простые операции над списками
Иерархические структуры
Древовидная структура
Линейное представление древовидной структуры
Преобразование арифметических выражений в списковые структуры
Сетевая структура
Системы управления базами данных
Инвертированные файлы
Пример инвертированного файла
Поиск по нескольким ключам
Элементы системы управления базой данных
Работа системы управления базой данных
Роль администратора базы данных
Определения
Организация в записи
Компоненты записи
Блоки
Форматы блоков и записей
Организация и методы доступа
Последовательная организация
Метод доступа с очередями
Библиотечная организация
Оглавление тома
Метки оглавления тома
Метки тома магнитной ленты
Прямая организация
Прямая адресация
Методы рандомизации
Сравнение методов рандомизации
Индексно-последовательная организация
Область основных данных
Области переполнения
Области индексов
Произвольный поиск
Режимы обработки
Добавление новых записей
Статистика
Общее про методы сортировки
Сортировка в основной памяти
Метод сортировки посредством выбора

Поиск по нескольким ключам

Структура инвертированного файла оказывается весьма полезной, когда необходимо осуществлять поиск данных по двум или более ключевым полям, имеющим предопределенные значения. Если все адреса записей перечислены в таблице индексов, то достаточно
просмотреть только строки этой таблицы, соответствующие заданным значениям ключей, и найти в них общие адреса. Если же записи соединены в таблице индексов посредством связанного списка, то достаточно просмотреть только одну из интересующих нас цепочек (предпочтительно самую короткую), выяснив при этом, какие из ее элементов удовлетворяют всем условиям.

Для того чтобы найти в файле, показанном на рис. 9.37, сведения о всех студентах, родившихся в 1952 г. и изучающих курс физики, последовательно просматривается более короткий связанный список «Дата рождения = 1952» и путем проверки поля ключа курса каждой записи выясняется, что единственной личностью, удовлетворяющей обоим условиям, является Ливи.

Если индексы сформированы так, как это показано на рис. 9.38, то путем сравнения строк «Дата рождения = 1952: 1400, 1700, 1800» и «Курс = Физика: 1100, 1200, 1300, 1600, 1800, 2300, 2400» выявляется только один общий адрес — 1800, который приводит к Ливи.

Hosted by uCoz