Description: In a Bitmap Index, each distinct value for the specified column is associated with a bitmap where each bit represents a row in the table. A '1' means that row contains that value, a '0' means it doesn't.
Bitmap Join Indexes extend this concept such that the index contains the data to support the join query, allowing the query to retrieve the data from the index rather than referencing the join tables. Since the information is compressed into a bitmap, the size of the resulting structure is significantly smaller than the corresponding materialized view.
A bitmap join index is defined on a single table. For an index key made up of dimension table columns, it stores the fact table rowids corresponding to that key.
Restrictions on Bitmap Join Indexes
In addition to the restrictions on bitmap indexes in general (see BITMAP), the following restrictions apply to bitmap join indexes:
- You cannot create a bitmap join index on an index-organized table or a temporary table.
- No table may appear twice in the FROM clause.
- You cannot create a function-based join index.
- The dimension table columns must be either primary key columns or have unique constraints.
- If a dimension table has a composite primary key, each column in the primary key must be part of the join.
- You cannot specify the local_index_clauses unless the fact table is partitioned.
Language: PL/SQL Highlight Mode: PLSQL Last Modified: March 10th, 2009
CREATE BITMAP JOIN INDEX<index_name>ON<table_name>(<table_name.column_name>)FROM<table_name, table_name>WHERE<join_condition>-- for example:CREATE BITMAP INDEX cust_sales_us
ON sales(customers.state)FROM sales, customers
WHERE sales.cust_id = customers.cust_id;
SQL University.net courses meet the most demanding needs of the business world for advanced education
in a cost-effective manner. SQL University.net courses are available immediately for IT professionals
and can be taken without disruption of your workplace schedule or processes.
Compared to traditional travel-based training, SQL University.net saves time and valuable corporate
resources, allowing companies to do more with less. That's our mission, and that's what we deliver.