- <refentry id="SQL-EXPLAIN">
- <refmeta>
- <refentrytitle>
- EXPLAIN
- </refentrytitle>
- <refmiscinfo>SQL - Language Statements</refmiscinfo>
- </refmeta>
- <refnamediv>
- <refname>
- EXPLAIN
- </refname>
- <refpurpose>
- Shows statement execution details
- </refpurpose>
- </refnamediv>
- <refsynopsisdiv>
- <refsynopsisdivinfo>
- <date>1998-09-01</date>
- </refsynopsisdivinfo>
- <synopsis>
- EXPLAIN [ VERBOSE ] <replaceable class="PARAMETER">query</replaceable>
- </synopsis>
- <refsect2 id="R2-SQL-EXPLAIN-1">
- <refsect2info>
- <date>1998-09-01</date>
- </refsect2info>
- <title>
- Inputs
- </title>
- <para>
- <variablelist>
- <varlistentry>
- <term>VERBOSE</term>
- <listitem>
- <para>
- Flag to show detailed query plan.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term><replaceable class="PARAMETER">query</replaceable></term>
- <listitem>
- <para>
- Any <replaceable class="PARAMETER">query</replaceable>.
- </para>
- </listitem>
- </varlistentry>
- </variablelist>
- </para>
- </refsect2>
- <refsect2 id="R2-SQL-EXPLAIN-2">
- <refsect2info>
- <date>1998-04-15</date>
- </refsect2info>
- <title>
- Outputs
- </title>
- <para>
- <variablelist>
- <varlistentry>
- <term><computeroutput>
- NOTICE: QUERY PLAN:
- <replaceable>plan</replaceable>
- </computeroutput></term>
- <listitem>
- <para>
- Explicit query plan from the <productname>Postgres</productname> backend.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term><computeroutput>
- EXPLAIN
- </computeroutput></term>
- <listitem>
- <para>
- Flag sent after query plan is shown.
- </para>
- </listitem>
- </varlistentry>
- </variablelist>
- </para>
- </refsect2>
- </refsynopsisdiv>
- <refsect1 id="R1-SQL-EXPLAIN-1">
- <refsect1info>
- <date>1998-04-15</date>
- </refsect1info>
- <title>
- Description
- </title>
- <para>
- This command outputs details about the supplied query.
- The default output is the computed query cost.
- The cost value is only meaningful to the optimizer in comparing
- various query plans.
- VERBOSE displays the full query plan and cost to your screen,
- and pretty-prints the plan to the postmaster log file.
- </para>
- <refsect2 id="R2-SQL-EXPLAIN-3">
- <refsect2info>
- <date>1998-04-15</date>
- </refsect2info>
- <title>
- Notes
- </title>
- <para>
- There is only sparse documentation on the optimizer's use of cost
- information in <productname>Postgres</productname>.
- General information on cost estimation for query optimization
- can be found in database textbooks.
- Refer to the <citetitle>Programmer's Guide</citetitle>
- in the chapters on indexes and the genetic query optimizer for
- more information.
- </para>
- </refsect2>
- </refsect1>
- <refsect1 id="R1-SQL-EXPLAIN-2">
- <title>
- Usage
- </title>
- <para>
- To show a query plan for a simple query:
- <programlisting>
- EXPLAIN select * from foo;
- NOTICE: QUERY PLAN:
- Seq Scan on foo (cost=0.00 rows=0 width=4)
- EXPLAIN
- </programlisting>
- </para>
- </refsect1>
- <refsect1 id="R1-SQL-EXPLAIN-3">
- <title>
- Compatibility
- </title>
- <para>
- </para>
- <refsect2 id="R2-SQL-EXPLAIN-4">
- <refsect2info>
- <date>1998-09-01</date>
- </refsect2info>
- <title>
- SQL92
- </title>
- <para>
- There is no <command>EXPLAIN</command> statement defined in SQL92.
- </para>
- </refsect2>
- </refsect1>
- </refentry>
- <!-- Keep this comment at the end of the file
- Local variables:
- mode: sgml
- sgml-omittag:nil
- sgml-shorttag:t
- sgml-minimize-attributes:nil
- sgml-always-quote-attributes:t
- sgml-indent-step:1
- sgml-indent-data:t
- sgml-parent-document:nil
- sgml-default-dtd-file:"../reference.ced"
- sgml-exposed-tags:nil
- sgml-local-catalogs:"/usr/lib/sgml/catalog"
- sgml-local-ecat-files:nil
- End:
- -->