Consultor Eletrônico



Kbase P115072: SQL: Is it true that the SQL engine will use only one index where the 4GL engine would use multiple
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   12/8/2008
Status: Verified

GOAL:

SQL: Is it true that the SQL engine will use only one index where the 4GL engine would use multiple indexes for an equivalent query?

GOAL:

Can the SQL engine use multiple indexes in query resolution?

GOAL:

Does the SQL engine use multiple indexes to resolve an SQL query?

FACT(s) (Environment):

All Supported Operating Systems
Progress 9.1x
OpenEdge 10.x

FIX:

It is possible that an SQL query will use one index only to resolve a query where the 4GL/ABL engine would use multiple indexes to resolve an equivalent query. The OpenEdge SQL engine can and does use multiple indexes for a query but it does not do so as aggressively as the 4GL.
The OpenEdge SQL engine may use 2 or more indexes, depending on the estimated cost, when a query contains predicates that apply to multiple indexes, and those predicates are OR'd together. For example:
SELECT * FROM PUB.Customer WHERE CustNum = 123 OR Zip = 98765;