Ответы:
У Oracle есть тип индекса, называемый Bitmap Index, который он описывает как ...
Индекс базы данных, в котором база данных хранит растровое изображение для каждого ключа индекса вместо списка строк.
Если таблица имеет индекс растрового изображения или используется подсказка, она может использовать план доступа к растровому изображению для обычных индексов B-дерева . Растровые индексы могут быть объединены, объединены и пересечены.
На use-the-index-luke.com есть отличное объяснение, которое включает в себя следующие реализации объединения нескольких индексов B-Tree:
DB2: DB2 поддерживает доступ с несколькими индексами в LUW 9r7 (с использованием динамического растрового изображения) и в zOS v10 .
MySQL: MySQL имеет оптимизацию слияния индексов, начиная с версии 5.0.
Oracle База данных Oracle использует преобразования BITMAP для быстрого объединения нескольких индексов (введено в 9i).
PostgreSQL PostgreSQL использует битовые карты для объединения нескольких индексов, начиная с версии 8.1.
SQL Server SQL Server может использовать несколько индексов («Пересечение индексов»), начиная с V7.0, с использованием алгоритма хеширования.
См. Также этот вопрос StackOverflow, в котором первый ответ говорит о том, что SQL Server делает нечто похожее на растровые индексы, используя пересечение индексов.
Эффективное и гибкое индексирование растровых изображений для сложных запросов на сходство - это самая близкая ссылка, которую я обнаружил, связывая растровые индексы со словом многомерный. Многомерный, похоже, скорее способ использовать индексы, чем их атрибут.
SQL Server может выполнять « Пересечение индекса ». И на MSDN .
Это то, что вы имеете в виду?
Возможно, растровые индексы Oracle - это то, что вы ищете. Типы индексов Oracle .
Я думаю, что они разрешают объединение и пересечение. Но я признаю, что я не знаком с ними.