> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kinetica.com/llms.txt
> Use this file to discover all available pages before exploring further.

# gpudb::AggregateHistogramRequest

> gpudb::AggregateHistogramRequest — Kinetica C++ API

<div className="kinetica-doxygen">
  <div className="contents">
    <p>A set of parameters for <a className="el" href="/content/api/cpp/classgpudb_1_1GPUdb#a44f85f0ed810158552eade4159d161ac">GPUdb::aggregateHistogram</a>. <a href="#details">More...</a></p>
    <p><code>#include \<<a className="el" href="/content/api/cpp/aggregate__histogram_8h_source">gpudb/protocol/aggregate\_histogram.h</a>></code></p>

    <table className="memberdecls">
      <tr className="heading">
        <td colSpan="2">
          <h2 className="groupheader"> Public Member Functions</h2>
        </td>
      </tr>

      <tr className="memitem:a3ce6fe7492dcb28d073abb697bab245e" id="r_a3ce6fe7492dcb28d073abb697bab245e">
        <td className="memItemLeft" align="right" valign="top"> </td>
        <td className="memItemRight" valign="bottom"><a className="el" href="#a3ce6fe7492dcb28d073abb697bab245e">AggregateHistogramRequest</a> ()</td>
      </tr>

      <tr className="memdesc:a3ce6fe7492dcb28d073abb697bab245e">
        <td className="mdescLeft"> </td>
        <td className="mdescRight">Constructs an <a className="el" href="/content/api/cpp/structgpudb_1_1AggregateHistogramRequest" title="A set of parameters for GPUdb::aggregateHistogram.">AggregateHistogramRequest</a> object with default parameters. <br /></td>
      </tr>

      <tr className="separator:a3ce6fe7492dcb28d073abb697bab245e">
        <td className="memSeparator" colSpan="2"> </td>
      </tr>

      <tr className="memitem:ac62f0c8a00730a738145db30121f8b53" id="r_ac62f0c8a00730a738145db30121f8b53">
        <td className="memItemLeft" align="right" valign="top"> </td>
        <td className="memItemRight" valign="bottom"><a className="el" href="#ac62f0c8a00730a738145db30121f8b53">AggregateHistogramRequest</a> (const std::string \&tableName\_, const std::string \&columnName\_, const double start\_, const double end\_, const double interval\_, const std::map\< std::string, std::string > \&options\_)</td>
      </tr>

      <tr className="memdesc:ac62f0c8a00730a738145db30121f8b53">
        <td className="mdescLeft"> </td>
        <td className="mdescRight">Constructs an <a className="el" href="/content/api/cpp/structgpudb_1_1AggregateHistogramRequest" title="A set of parameters for GPUdb::aggregateHistogram.">AggregateHistogramRequest</a> object with the specified parameters. <br /></td>
      </tr>

      <tr className="separator:ac62f0c8a00730a738145db30121f8b53">
        <td className="memSeparator" colSpan="2"> </td>
      </tr>
    </table>

    <table className="memberdecls">
      <tr className="heading">
        <td colSpan="2">
          <h2 className="groupheader"> Public Attributes</h2>
        </td>
      </tr>

      <tr className="memitem:a4969d403770469acc721964c0b979aa7" id="r_a4969d403770469acc721964c0b979aa7">
        <td className="memItemLeft" align="right" valign="top">std::string </td>
        <td className="memItemRight" valign="bottom"><a className="el" href="#a4969d403770469acc721964c0b979aa7">tableName</a></td>
      </tr>

      <tr className="memdesc:a4969d403770469acc721964c0b979aa7">
        <td className="mdescLeft"> </td>
        <td className="mdescRight">Name of the table on which the operation will be performed. <br /></td>
      </tr>

      <tr className="separator:a4969d403770469acc721964c0b979aa7">
        <td className="memSeparator" colSpan="2"> </td>
      </tr>

      <tr className="memitem:abfaae2831779c90d18abe87661c0c439" id="r_abfaae2831779c90d18abe87661c0c439">
        <td className="memItemLeft" align="right" valign="top">std::string </td>
        <td className="memItemRight" valign="bottom"><a className="el" href="#abfaae2831779c90d18abe87661c0c439">columnName</a></td>
      </tr>

      <tr className="memdesc:abfaae2831779c90d18abe87661c0c439">
        <td className="mdescLeft"> </td>
        <td className="mdescRight">Name of a column or an expression of one or more column names over which the histogram will be calculated. <br /></td>
      </tr>

      <tr className="separator:abfaae2831779c90d18abe87661c0c439">
        <td className="memSeparator" colSpan="2"> </td>
      </tr>

      <tr className="memitem:a0d6f37c8107c62cbcedfbe4d0105a3d0" id="r_a0d6f37c8107c62cbcedfbe4d0105a3d0">
        <td className="memItemLeft" align="right" valign="top">double </td>
        <td className="memItemRight" valign="bottom"><a className="el" href="#a0d6f37c8107c62cbcedfbe4d0105a3d0">start</a></td>
      </tr>

      <tr className="memdesc:a0d6f37c8107c62cbcedfbe4d0105a3d0">
        <td className="mdescLeft"> </td>
        <td className="mdescRight">Lower end value of the histogram interval, inclusive. <br /></td>
      </tr>

      <tr className="separator:a0d6f37c8107c62cbcedfbe4d0105a3d0">
        <td className="memSeparator" colSpan="2"> </td>
      </tr>

      <tr className="memitem:aa8f9928a2522802c7ae1d87bf5a03434" id="r_aa8f9928a2522802c7ae1d87bf5a03434">
        <td className="memItemLeft" align="right" valign="top">double </td>
        <td className="memItemRight" valign="bottom"><a className="el" href="#aa8f9928a2522802c7ae1d87bf5a03434">end</a></td>
      </tr>

      <tr className="memdesc:aa8f9928a2522802c7ae1d87bf5a03434">
        <td className="mdescLeft"> </td>
        <td className="mdescRight">Upper end value of the histogram interval, inclusive. <br /></td>
      </tr>

      <tr className="separator:aa8f9928a2522802c7ae1d87bf5a03434">
        <td className="memSeparator" colSpan="2"> </td>
      </tr>

      <tr className="memitem:abdd548aff47a9cb171d656db838b004d" id="r_abdd548aff47a9cb171d656db838b004d">
        <td className="memItemLeft" align="right" valign="top">double </td>
        <td className="memItemRight" valign="bottom"><a className="el" href="#abdd548aff47a9cb171d656db838b004d">interval</a></td>
      </tr>

      <tr className="memdesc:abdd548aff47a9cb171d656db838b004d">
        <td className="mdescLeft"> </td>
        <td className="mdescRight">The size of each bin within the start and end parameters. <br /></td>
      </tr>

      <tr className="separator:abdd548aff47a9cb171d656db838b004d">
        <td className="memSeparator" colSpan="2"> </td>
      </tr>

      <tr className="memitem:ac6eb0aa06244298a8f8902352cc488bf" id="r_ac6eb0aa06244298a8f8902352cc488bf">
        <td className="memItemLeft" align="right" valign="top">std::map\< std::string, std::string > </td>
        <td className="memItemRight" valign="bottom"><a className="el" href="#ac6eb0aa06244298a8f8902352cc488bf">options</a></td>
      </tr>

      <tr className="memdesc:ac6eb0aa06244298a8f8902352cc488bf">
        <td className="mdescLeft"> </td>
        <td className="mdescRight">Optional parameters. <br /></td>
      </tr>

      <tr className="separator:ac6eb0aa06244298a8f8902352cc488bf">
        <td className="memSeparator" colSpan="2"> </td>
      </tr>
    </table>

    <h2 className="groupheader">Detailed Description</h2>

    <div className="textblock">
      <p>A set of parameters for <a className="el" href="/content/api/cpp/classgpudb_1_1GPUdb#a44f85f0ed810158552eade4159d161ac">GPUdb::aggregateHistogram</a>. </p>
      <p>Performs a histogram calculation given a table, a column, and an interval function. The <a className="el" href="#abdd548aff47a9cb171d656db838b004d">interval</a> is used to produce bins of that size and the result, computed over the records falling within each bin, is returned. For each bin, the start value is inclusive, but the end value is exclusive–except for the very last bin for which the end value is also inclusive. The value returned for each bin is the number of records in it, except when a column name is provided as a <a className="el" href="/content/api/cpp/namespacegpudb#a1a869e8637f82e48e93e1c57d7be8170">value\_column</a>. In this latter case the sum of the values corresponding to the <a className="el" href="/content/api/cpp/namespacegpudb#a1a869e8637f82e48e93e1c57d7be8170">value\_column</a> is used as the result instead. The total number of bins requested cannot exceed 10,000.</p>
      <p>NOTE: The Kinetica instance being accessed must be running a CUDA (GPU-based) build to service a request that specifies a <a className="el" href="/content/api/cpp/namespacegpudb#a1a869e8637f82e48e93e1c57d7be8170">value\_column</a>. </p>
      <p className="definition">Definition at line <a className="el" href="/content/api/cpp/aggregate__histogram_8h_source#l00033">33</a> of file <a className="el" href="/content/api/cpp/aggregate__histogram_8h_source">aggregate\_histogram.h</a>.</p>
    </div>

    <h2 className="groupheader">Constructor & Destructor Documentation</h2>
    <h2 className="memtitle"><span className="permalink"><a href="#a3ce6fe7492dcb28d073abb697bab245e">◆ </a></span>AggregateHistogramRequest() <span className="overload">\[1/2]</span></h2>

    <div className="memitem">
      <div className="memproto">
        <table className="mlabels">
          <tr>
            <td className="mlabels-left">
              <table className="memname">
                <tr>
                  <td className="memname">gpudb::AggregateHistogramRequest::AggregateHistogramRequest </td>
                  <td>(</td>

                  <td className="paramname">
                    <span className="paramname">
                      <span className="em" />
                    </span>
                  </td>

                  <td>)</td>

                  <td />
                </tr>
              </table>
            </td>

            <td className="mlabels-right"> <span className="mlabels"><span className="mlabel inline">inline</span></span> </td>
          </tr>
        </table>
      </div>

      <div className="memdoc">
        <p>Constructs an <a className="el" href="/content/api/cpp/structgpudb_1_1AggregateHistogramRequest" title="A set of parameters for GPUdb::aggregateHistogram.">AggregateHistogramRequest</a> object with default parameters. </p>
        <p className="definition">Definition at line <a className="el" href="/content/api/cpp/aggregate__histogram_8h_source#l00039">39</a> of file <a className="el" href="/content/api/cpp/aggregate__histogram_8h_source">aggregate\_histogram.h</a>.</p>
      </div>
    </div>

    <h2 className="memtitle"><span className="permalink"><a href="#ac62f0c8a00730a738145db30121f8b53">◆ </a></span>AggregateHistogramRequest() <span className="overload">\[2/2]</span></h2>

    <div className="memitem">
      <div className="memproto">
        <table className="mlabels">
          <tr>
            <td className="mlabels-left">
              <table className="memname">
                <tr>
                  <td className="memname">gpudb::AggregateHistogramRequest::AggregateHistogramRequest </td>
                  <td>(</td>
                  <td className="paramtype">const std::string &</td>
                  <td className="paramname"><span className="paramname"><span className="em">tableName\_</span></span>, </td>
                </tr>

                <tr>
                  <td className="paramkey" />

                  <td />

                  <td className="paramtype">const std::string &</td>
                  <td className="paramname"><span className="paramname"><span className="em">columnName\_</span></span>, </td>
                </tr>

                <tr>
                  <td className="paramkey" />

                  <td />

                  <td className="paramtype">const double</td>
                  <td className="paramname"><span className="paramname"><span className="em">start\_</span></span>, </td>
                </tr>

                <tr>
                  <td className="paramkey" />

                  <td />

                  <td className="paramtype">const double</td>
                  <td className="paramname"><span className="paramname"><span className="em">end\_</span></span>, </td>
                </tr>

                <tr>
                  <td className="paramkey" />

                  <td />

                  <td className="paramtype">const double</td>
                  <td className="paramname"><span className="paramname"><span className="em">interval\_</span></span>, </td>
                </tr>

                <tr>
                  <td className="paramkey" />

                  <td />

                  <td className="paramtype">const std::map\< std::string, std::string > &</td>
                  <td className="paramname"><span className="paramname"><span className="em">options\_</span></span> )</td>
                </tr>
              </table>
            </td>

            <td className="mlabels-right"> <span className="mlabels"><span className="mlabel inline">inline</span></span> </td>
          </tr>
        </table>
      </div>

      <div className="memdoc">
        <p>Constructs an <a className="el" href="/content/api/cpp/structgpudb_1_1AggregateHistogramRequest" title="A set of parameters for GPUdb::aggregateHistogram.">AggregateHistogramRequest</a> object with the specified parameters. </p>

        <div className="dl params">
          <div className="dt">Parameters</div>

          <div className="dd">
            <table className="params">
              <tr>
                <td className="paramdir">\[in]</td>
                <td className="paramname">tableName\_</td>
                <td>Name of the table on which the operation will be performed. Must be an existing table, in \[schema\_name.]table\_name format, using standard <a href="/content/concepts/tables/#table-name-resolution" target="_top">name resolution rules</a>. </td>
              </tr>

              <tr>
                <td className="paramdir">\[in]</td>
                <td className="paramname">columnName\_</td>
                <td>Name of a column or an expression of one or more column names over which the histogram will be calculated. </td>
              </tr>

              <tr>
                <td className="paramdir">\[in]</td>
                <td className="paramname">start\_</td>
                <td>Lower end value of the histogram interval, inclusive. </td>
              </tr>

              <tr>
                <td className="paramdir">\[in]</td>
                <td className="paramname">end\_</td>
                <td>Upper end value of the histogram interval, inclusive. </td>
              </tr>

              <tr>
                <td className="paramdir">\[in]</td>
                <td className="paramname">interval\_</td>
                <td>The size of each bin within the start and end parameters. </td>
              </tr>

              <tr>
                <td className="paramdir">\[in]</td>
                <td className="paramname">options\_</td>

                <td>
                  Optional parameters.

                  <ul>
                    <li> <a className="el" href="/content/api/cpp/namespacegpudb#a1a869e8637f82e48e93e1c57d7be8170">aggregate\_histogram\_value\_column</a>: The name of the column to use when calculating the bin values (values are summed). The column must be a numerical type (int, double, long, float). </li>
                    <li> <a className="el" href="/content/api/cpp/namespacegpudb#ab782971147a6d658b91d87eb8c5d9cec">aggregate\_histogram\_start</a>: The start parameter for char types. </li>
                    <li> <a className="el" href="/content/api/cpp/namespacegpudb#abc6eb3aa953301a4cc0772837694139a">aggregate\_histogram\_end</a>: The end parameter for char types. </li>
                    <li> <a className="el" href="/content/api/cpp/namespacegpudb#ad71784c6b9ebc622c7e45f341fdb9e72">aggregate\_histogram\_interval</a>: The interval parameter for char types. </li>
                  </ul>

                  The default value is an empty map.
                </td>
              </tr>
            </table>
          </div>
        </div>

        <p className="definition">Definition at line <a className="el" href="/content/api/cpp/aggregate__histogram_8h_source#l00091">91</a> of file <a className="el" href="/content/api/cpp/aggregate__histogram_8h_source">aggregate\_histogram.h</a>.</p>
      </div>
    </div>

    <h2 className="groupheader">Member Data Documentation</h2>
    <h2 className="memtitle"><span className="permalink"><a href="#abfaae2831779c90d18abe87661c0c439">◆ </a></span>columnName</h2>

    <div className="memitem">
      <div className="memproto">
        <table className="memname">
          <tr>
            <td className="memname">std::string gpudb::AggregateHistogramRequest::columnName</td>
          </tr>
        </table>
      </div>

      <div className="memdoc">
        <p>Name of a column or an expression of one or more column names over which the histogram will be calculated. </p>
        <p className="definition">Definition at line <a className="el" href="/content/api/cpp/aggregate__histogram_8h_source#l00113">113</a> of file <a className="el" href="/content/api/cpp/aggregate__histogram_8h_source">aggregate\_histogram.h</a>.</p>
      </div>
    </div>

    <h2 className="memtitle"><span className="permalink"><a href="#aa8f9928a2522802c7ae1d87bf5a03434">◆ </a></span>end</h2>

    <div className="memitem">
      <div className="memproto">
        <table className="memname">
          <tr>
            <td className="memname">double gpudb::AggregateHistogramRequest::end</td>
          </tr>
        </table>
      </div>

      <div className="memdoc">
        <p>Upper end value of the histogram interval, inclusive. </p>
        <p className="definition">Definition at line <a className="el" href="/content/api/cpp/aggregate__histogram_8h_source#l00123">123</a> of file <a className="el" href="/content/api/cpp/aggregate__histogram_8h_source">aggregate\_histogram.h</a>.</p>
      </div>
    </div>

    <h2 className="memtitle"><span className="permalink"><a href="#abdd548aff47a9cb171d656db838b004d">◆ </a></span>interval</h2>

    <div className="memitem">
      <div className="memproto">
        <table className="memname">
          <tr>
            <td className="memname">double gpudb::AggregateHistogramRequest::interval</td>
          </tr>
        </table>
      </div>

      <div className="memdoc">
        <p>The size of each bin within the start and end parameters. </p>
        <p className="definition">Definition at line <a className="el" href="/content/api/cpp/aggregate__histogram_8h_source#l00128">128</a> of file <a className="el" href="/content/api/cpp/aggregate__histogram_8h_source">aggregate\_histogram.h</a>.</p>
      </div>
    </div>

    <h2 className="memtitle"><span className="permalink"><a href="#ac6eb0aa06244298a8f8902352cc488bf">◆ </a></span>options</h2>

    <div className="memitem">
      <div className="memproto">
        <table className="memname">
          <tr>
            <td className="memname">std::map\<std::string, std::string> gpudb::AggregateHistogramRequest::options</td>
          </tr>
        </table>
      </div>

      <div className="memdoc">
        <p>Optional parameters. </p>

        <ul>
          <li> <a className="el" href="/content/api/cpp/namespacegpudb#a1a869e8637f82e48e93e1c57d7be8170">aggregate\_histogram\_value\_column</a>: The name of the column to use when calculating the bin values (values are summed). The column must be a numerical type (int, double, long, float). </li>
          <li> <a className="el" href="/content/api/cpp/namespacegpudb#ab782971147a6d658b91d87eb8c5d9cec">aggregate\_histogram\_start</a>: The start parameter for char types. </li>
          <li> <a className="el" href="/content/api/cpp/namespacegpudb#abc6eb3aa953301a4cc0772837694139a">aggregate\_histogram\_end</a>: The end parameter for char types. </li>
          <li> <a className="el" href="/content/api/cpp/namespacegpudb#ad71784c6b9ebc622c7e45f341fdb9e72">aggregate\_histogram\_interval</a>: The interval parameter for char types. </li>
        </ul>

        <p>The default value is an empty map. </p>
        <p className="definition">Definition at line <a className="el" href="/content/api/cpp/aggregate__histogram_8h_source#l00149">149</a> of file <a className="el" href="/content/api/cpp/aggregate__histogram_8h_source">aggregate\_histogram.h</a>.</p>
      </div>
    </div>

    <h2 className="memtitle"><span className="permalink"><a href="#a0d6f37c8107c62cbcedfbe4d0105a3d0">◆ </a></span>start</h2>

    <div className="memitem">
      <div className="memproto">
        <table className="memname">
          <tr>
            <td className="memname">double gpudb::AggregateHistogramRequest::start</td>
          </tr>
        </table>
      </div>

      <div className="memdoc">
        <p>Lower end value of the histogram interval, inclusive. </p>
        <p className="definition">Definition at line <a className="el" href="/content/api/cpp/aggregate__histogram_8h_source#l00118">118</a> of file <a className="el" href="/content/api/cpp/aggregate__histogram_8h_source">aggregate\_histogram.h</a>.</p>
      </div>
    </div>

    <h2 className="memtitle"><span className="permalink"><a href="#a4969d403770469acc721964c0b979aa7">◆ </a></span>tableName</h2>

    <div className="memitem">
      <div className="memproto">
        <table className="memname">
          <tr>
            <td className="memname">std::string gpudb::AggregateHistogramRequest::tableName</td>
          </tr>
        </table>
      </div>

      <div className="memdoc">
        <p>Name of the table on which the operation will be performed. </p>
        <p>Must be an existing table, in \[ schema\_name. ]table\_name format, using standard <a href="/content/concepts/tables/#table-name-resolution" target="_top">name resolution rules</a>. </p>
        <p className="definition">Definition at line <a className="el" href="/content/api/cpp/aggregate__histogram_8h_source#l00107">107</a> of file <a className="el" href="/content/api/cpp/aggregate__histogram_8h_source">aggregate\_histogram.h</a>.</p>
      </div>
    </div>

    <hr />

    The documentation for this struct was generated from the following file:

    <ul>
      <li>gpudb/protocol/<a className="el" href="/content/api/cpp/aggregate__histogram_8h_source">aggregate\_histogram.h</a></li>
    </ul>
  </div>
</div>
