Home Explore Blog CI



postgresql

23th chunk of `doc/src/sgml/ref/pgbench.sgml`
b0fce879c4f13087f633a011f7819766f49713e36c554fa50000000100000fac
 role="func_table_entry"><para role="func_signature">
        <replaceable>number</replaceable> <literal>*</literal> <replaceable>number</replaceable>
        <returnvalue><replaceable>number</replaceable></returnvalue>
       </para>
       <para>
        Multiplication
       </para>
       <para>
        <literal>5 * 4</literal>
        <returnvalue>20</returnvalue>
       </para></entry>
      </row>

      <row>
       <entry role="func_table_entry"><para role="func_signature">
        <replaceable>number</replaceable> <literal>/</literal> <replaceable>number</replaceable>
        <returnvalue><replaceable>number</replaceable></returnvalue>
       </para>
       <para>
        Division (truncates the result towards zero if both inputs are integers)
       </para>
       <para>
        <literal>5 / 3</literal>
        <returnvalue>1</returnvalue>
       </para></entry>
      </row>

      <row>
       <entry role="func_table_entry"><para role="func_signature">
        <replaceable>integer</replaceable> <literal>%</literal> <replaceable>integer</replaceable>
        <returnvalue><replaceable>integer</replaceable></returnvalue>
       </para>
       <para>
        Modulo (remainder)
       </para>
       <para>
        <literal>3 % 2</literal>
        <returnvalue>1</returnvalue>
       </para></entry>
      </row>

      <row>
       <entry role="func_table_entry"><para role="func_signature">
        <literal>-</literal> <replaceable>number</replaceable>
        <returnvalue><replaceable>number</replaceable></returnvalue>
       </para>
       <para>
        Negation
       </para>
       <para>
        <literal>- 2.0</literal>
        <returnvalue>-2.0</returnvalue>
       </para></entry>
      </row>
     </tbody>
    </tgroup>
   </table>
 </refsect2>

 <refsect2 id="pgbench-builtin-functions">
  <title>Built-In Functions</title>

  <para>
   The functions listed in <xref linkend="pgbench-functions"/> are built
   into <application>pgbench</application> and may be used in expressions appearing in
   <link linkend="pgbench-metacommand-set"><literal>\set</literal></link>.
  </para>

   <!-- list pgbench functions in alphabetical order -->
   <table id="pgbench-functions">
    <title>pgbench Functions</title>
    <tgroup cols="1">
     <thead>
      <row>
       <entry role="func_table_entry"><para role="func_signature">
        Function
       </para>
       <para>
        Description
       </para>
       <para>
        Example(s)
       </para></entry>
      </row>
     </thead>

     <tbody>
      <row>
       <entry role="func_table_entry"><para role="func_signature">
        <function>abs</function> ( <replaceable>number</replaceable> )
        <returnvalue></returnvalue> same type as input
       </para>
       <para>
        Absolute value
       </para>
       <para>
        <literal>abs(-17)</literal>
        <returnvalue>17</returnvalue>
       </para></entry>
      </row>

      <row>
       <entry role="func_table_entry"><para role="func_signature">
        <function>debug</function> ( <replaceable>number</replaceable> )
        <returnvalue></returnvalue> same type as input
       </para>
       <para>
        Prints the argument to <systemitem>stderr</systemitem>,
        and returns the argument.
       </para>
       <para>
        <literal>debug(5432.1)</literal>
        <returnvalue>5432.1</returnvalue>
       </para></entry>
      </row>

      <row>
       <entry role="func_table_entry"><para role="func_signature">
        <function>double</function> ( <replaceable>number</replaceable> )
        <returnvalue>double</returnvalue>
       </para>
       <para>
        Casts to double.
       </para>
       <para>
        <literal>double(5432)</literal>
        <returnvalue>5432.0</returnvalue>
       </para></entry>
      </row>

      <row>
       <entry role="func_table_entry"><para role="func_signature">
        <function>exp</function> ( <replaceable>number</replaceable> )
        <returnvalue>double</returnvalue>

Title: pgbench Built-in Operators and Functions
Summary
This section details the remaining arithmetic operators (multiplication, division, modulo, negation) available in pgbench, providing signatures, descriptions, and examples. It then introduces built-in functions that can be used in expressions within \set, including functions like abs, debug, double, and exp.