In the Query Rewrite phase, SQL Anywhere performs a number of transformations in search of more efficient and convenient representations of the query. Because the query may be rewritten into a semantically equivalent query, the plan may look quite different from a literal interpretation of your original query. Common manipulations include:
Some query rewrite optimizations cannot be performed on the main query block if the cursor is updatable. Declare the cursor as read-only to take advantage of the optimizations. See Choosing cursor types, and DECLARE CURSOR statement [ESQL] [SP].
For an example of an optimization that cannot be performed if the main query block is an updatable cursor, see Elimination of unnecessary inner and outer joins.
Elimination of unnecessary DISTINCT conditions
Un-nesting subqueries
Predicate push-down in UNION or GROUPed views and derived tables
Optimization of OR and IN-list predicates
Optimization of LIKE predicates
Conversion of outer joins to inner joins
Elimination of unnecessary inner and outer joins
Discovery of exploitable conditions through predicate inference
Elimination of unnecessary case translation
Rewriting subqueries as EXISTS predicates
Inlining user-defined functions
Inlining simple system procedures
Send feedback about this page via email or DocCommentXchange | Copyright © 2008, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.0 |