Neoview SQL Reference Manual (R2.4 SP2)
Considerations for UPDATE STATISTICS
Physical Statistics
Physical statistics (index level, nonempty block count, and EOF) are generated for UPDATE
STATISTICS statements unless you use the CLEAR option.
Using Statistics
Use UPDATE STATISTICS to collect and save statistics on columns. The SQL compiler uses
histogram statistics to determine the selectivity of predicates, indexes, and tables. Because
selectivity directly influences the cost of access plans, regular collection of statistics increases the
likelihood that Neoview SQL chooses efficient access plans.
When a user table is changed, either by changing its data significantly or its definition, reexecute
the UPDATE STATISTICS statement for the table.
For information about automating UPDATE STATISTICS operations to run during a maintenance
window and to operate on a specific set of tables, see the Neoview Database Administrator's Guide.
Authorization and Locking
To run the UPDATE STATISTICS statement against SQL tables, you must have the authority to
read the user table for which statistics are generated. Because the histogram tables are registered
in the schema of table, you must have the authority to read and write to this schema.
UPDATE STATISTICS momentarily locks the definition of the user table during the operation
but not the user table itself. The UPDATE STATISTICS statement uses READ UNCOMMITTED
isolation level for the user table.
Transactions
Do not start a transaction before executing UPDATE STATISTICS. UPDATE STATISTICS runs
multiple transactions of its own, as needed. Starting your own transaction in which UPDATE
STATISTICS runs could cause the transaction auto abort time to be exceeded during the
processing.
Generating and Clearing Statistics for Columns
To generate statistics for particular columns, name each column, or name the first and last columns
of a sequence of columns in the table. For example, suppose that a table has consecutive columns
CITY, STATE, ZIP. This list gives a few examples of possible options you can specify:
Multicolumn GroupSingle-Column Group Within
Parentheses
Single-Column Group
ON (CITY, STATE) or ON
(CITY,STATE,ZIP)
ON (CITY),(STATE),(ZIP)ON CITY, STATE, ZIP
ON (CITY) TO (ZIP)ON CITY TO ZIP
ON (ZIP) TO (CITY)ON ZIP TO CITY
ON (CITY), (STATE) TO (ZIP)ON CITY, STATE TO ZIP
ON (CITY) TO (STATE), (ZIP)ON CITY TO STATE, ZIP
The TO specification is useful when a table has many columns, and you want histograms on a
subset of columns. Do not confuse (CITY) TO (ZIP) with (CITY, STATE, ZIP), which refers to a
multi-column histogram.
You can clear statistics in any combination of columns you specify, not necessarily with the
column-group-list you used to create statistics. However, those statistics will remain until
you clear them.
206 SQL Statements