You use the db2exfmt tool to format the contents of the EXPLAIN tables. This tool is located in the misc subdirectory of the instance sqllib directory. This tool uses the statistics from the EXPLAIN snapshot, if the snapshot is available.
To use the tool, you require read access to the explain tables being formatted.
>>-db2exfmt--+-----+--+-------------+--+-------------+----------> '- -1-' '- -d--dbname-' '- -e--schema-' >--+--------+--+---------------------------+--+-----+-----------> '- -f--O-' | .-----------. | '- -l-' | V | | '- -g--+---+----+-------+-+-' '-x-' +-O-----+ +-I-----+ +-C-----+ '-+-T-+-' '-F-' .- -t-. >--+-----------+--+--------------+--+-------------+--+-----+----> '- -n--name-' '- -o--outfile-' '- -s--schema-' >--+-----------------------+--+----------------+----------------> '- -u--userID--password-' '- -w--timestamp-' >--+--------------+--+--------------+--+-----+----------------->< '- -#--sectnbr-' '- -v--srcvers-' '- -h-'
If Explain schema is not supplied, the contents of the environment variable $USER, or $USERNAME will be used as a default. If this variable is not found, the user will be prompted for an Explain schema.
Any combination of these options is allowed, except F and T, which are mutually exclusive.
Both the user ID and password must be valid according to naming conventions and be recognized by the database.
You will be prompted for any parameter values that are not supplied, or that are incompletely specified, except in the case of the -h and the -l options.
If an explain table SQL schema is not provided, the value of the environment variable USER is used as the default. If this variable is not found, the user is prompted for an explain table SQL schema.
Source name, source SQL schema, and explain time stamp can be supplied in LIKE predicate form, which allows the percent sign (%) and the underscore (_) to be used as pattern matching characters to select multiple sources with one invocation. For the latest explained statement, the explain time can be specified as -1.
If -o is specified without a file name, and -t is not specified, the user is prompted for a file name (the default name is db2exfmt.out). If neither -o nor -t is specified, the user is prompted for a file name (the default option is terminal output). If -o and -t are both specified, the output is directed to the terminal.
The db2exfmt command displays the statistics from the EXPLAIN snapshot, if the snapshot is available. Otherwise, db2exfmt displays statistics stored in the EXPLAIN_OBJECT table and also displays some statistics retrieved directly from the system catalog.
db2 explain plan with snapshot for query
db2exfmt
or, db2 set current explain mode yes
db2 set current explain snapshot yes
run the query
db2exfmt