+ <varlistentry>
+ <term><parameter>identifiers</parameter></term>
+ <listitem>
+ <para>
+ A set of <glossterm linkend="gloss-sql-expression">sql
+ expressions</glossterm> each of which indicates a column
+ to query.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><parameter>all</parameter></term>
+ <listitem>
+ <para>
+ A Boolean.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><parameter>distinct</parameter></term>
+ <listitem>
+ <para>
+ A Boolean.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><parameter>from</parameter></term>
+ <listitem>
+ <para>
+ One or more SQL expression representing tables.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><parameter>group-by</parameter></term>
+ <listitem>
+ <para>
+ An SQL expression.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><parameter>having</parameter></term>
+ <listitem>
+ <para>
+ An SQL expression.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><parameter>limit</parameter></term>
+ <listitem>
+ <para>
+ A non-negative integer.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><parameter>offset</parameter></term>
+ <listitem>
+ <para>
+ A non-negative integer.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><parameter>order-by</parameter></term>
+ <listitem>
+ <para>
+ An SQL expression.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><parameter>set-operation</parameter></term>
+ <listitem>
+ <para>
+ An SQL expression.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><parameter>where</parameter></term>
+ <listitem>
+ <para>
+ An SQL expression.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><parameter>database</parameter></term>
+ <listitem>
+ <para>A
+ <glossterm linkend="gloss-database-object">database
+ object</glossterm>. This will default to the value
+ of <symbol>*default-database*</symbol>.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><parameter>flatp</parameter></term>
+ <listitem>
+ <para>A Boolean whose default value is &nil;.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><parameter>result-types</parameter></term>
+ <listitem>
+ <para>A
+ <glossterm linkend="gloss-field-types">field type
+ specifier</glossterm>. The default is <symbol>:auto</symbol>.
+ </para>
+ <para>
+ The purpose of this argument is cause &clsql; to
+ import SQL numeric fields into numeric Lisp objects
+ rather than strings. This reduces the cost of
+ allocating a temporary string and the &clsql; users'
+ inconvenience of converting number strings into number
+ objects.
+ </para>
+ <para>
+ A value of <symbol>:auto</symbol> causes &clsql;
+ to automatically convert SQL fields into a
+ numeric format where applicable. The default value of
+ &nil; causes all fields to be returned as strings
+ regardless of the SQL type. Otherwise a list is expected
+ which has a element for each field that specifies the
+ conversion. Valid type identifiers are:
+ <simplelist type="vert">
+ <member><symbol>:int</symbol> Field is imported as a
+ signed integer, from 8-bits to 64-bits depending
+ upon the field type.
+ </member>
+ <member><symbol>:double</symbol> Field is imported as a
+ double-float number.
+ </member>
+ <member><symbol>t</symbol> Field is imported as a
+ string.
+ </member>
+ </simplelist>
+ If the list is shorter than the number of fields, the a
+ value of <symbol>t</symbol> is assumed for the field.
+ If the list is longer than the number of fields, the
+ extra elements are ignored.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><parameter>field-names</parameter></term>
+ <listitem>
+ <para>
+ A boolean with a default value of &t;. When &t;, this
+ function returns a second value of a list of field
+ names. When &nil;, this function only returns one value -
+ the list of rows.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><parameter>refresh</parameter></term>
+ <listitem>
+ <para>
+ This value is only considered when CLOS objects are being
+ selected. A boolean with a default value of &nil;. When
+ the value of the <varname>caching</varname> keyword is
+ &t;, a second equivalent <function>select</function> call
+ will return the same view class instance objects. When
+ <varname>refresh</varname> is &t;, then slots of the
+ existing instances are updated as necessary. In such
+ cases, you may wish to override the hook
+ <function>instance-refresh</function>.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><parameter>caching</parameter></term>
+ <listitem>
+ <para>
+ This value is only considered when CLOS objects are being
+ selected. A boolean with a default value of
+ <varname>*default-caching*</varname>. &clsql; caches
+ objects in accordance with the &commonsql; interface: a
+ second equivalent <function>select</function> call will
+ return the same view class instance objects.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><parameter>result</parameter></term>
+ <listitem>
+ <para>
+ A list representing the result set obtained. For each
+ tuple in the result set, there is an element in this
+ list, which is itself a list of all the attribute values
+ in the tuple.
+ </para>
+ </listitem>
+ </varlistentry>