> ## 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.

# createMaterializedView

<div className="kinetica-doxygen">
  <div id="a494c22211d9100d2c5ca53d4f6cef62a" />

  <h2 className="memtitle"><span className="permalink"><a href="#a494c22211d9100d2c5ca53d4f6cef62a">◆ </a></span>createMaterializedView() <span className="overload">\[1/4]</span></h2>

  <div className="memitem">
    <div className="memproto">
      <table className="memname">
        <tr>
          <td className="memname"><a className="el" href="/content/api/cpp/structgpudb_1_1CreateMaterializedViewResponse">CreateMaterializedViewResponse</a> gpudb::GPUdb::createMaterializedView </td>
          <td>(</td>
          <td className="paramtype">const <a className="el" href="/content/api/cpp/structgpudb_1_1CreateMaterializedViewRequest">CreateMaterializedViewRequest</a> &</td>
          <td className="paramname"><span className="paramname"><span className="em">request\_</span></span></td>
          <td>)</td>
          <td> const</td>
        </tr>
      </table>
    </div>

    <div className="memdoc">
      <p>Initiates the process of creating a materialized view, reserving the view's name to prevent other views or tables from being created with that name. </p>
      <p>For materialized view details and examples, see <a href="/content/concepts/materialized_views/" target="_top">Materialized Views</a>.</p>
      <p>The response contains <a className="el" href="/content/api/cpp/structgpudb_1_1CreateMaterializedViewResponse#ab6b4448f11d3b8bd4ce19a5be6e039f6">viewId</a>, which is used to tag each subsequent operation (projection, union, aggregation, filter, or join) that will compose the view.</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">request\_</td>
              <td><a className="el" href="/content/api/cpp/structgpudb_1_1CreateMaterializedViewRequest">Request</a> object containing the parameters for the operation.</td>
            </tr>
          </table>
        </div>
      </div>

      <div className="dl section return">
        <div className="dt">Returns</div>
        <div className="dd"><a className="el" href="/content/api/cpp/structgpudb_1_1CreateMaterializedViewResponse">Response</a> object containing the result of the operation. </div>
      </div>
    </div>
  </div>

  <div id="ad86909729ba25bf8a3c781bb50c954dd" />

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

  <div className="memitem">
    <div className="memproto">
      <table className="memname">
        <tr>
          <td className="memname"><a className="el" href="/content/api/cpp/structgpudb_1_1CreateMaterializedViewResponse">CreateMaterializedViewResponse</a> & gpudb::GPUdb::createMaterializedView </td>
          <td>(</td>
          <td className="paramtype">const <a className="el" href="/content/api/cpp/structgpudb_1_1CreateMaterializedViewRequest">CreateMaterializedViewRequest</a> &</td>
          <td className="paramname"><span className="paramname"><span className="em">request\_</span></span>, </td>
        </tr>

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

          <td />

          <td className="paramtype"><a className="el" href="/content/api/cpp/structgpudb_1_1CreateMaterializedViewResponse">CreateMaterializedViewResponse</a> &</td>
          <td className="paramname"><span className="paramname"><span className="em">response\_</span></span> ) const</td>
        </tr>
      </table>
    </div>

    <div className="memdoc">
      <p>Initiates the process of creating a materialized view, reserving the view's name to prevent other views or tables from being created with that name. </p>
      <p>For materialized view details and examples, see <a href="/content/concepts/materialized_views/" target="_top">Materialized Views</a>.</p>
      <p>The response contains <a className="el" href="/content/api/cpp/structgpudb_1_1CreateMaterializedViewResponse#ab6b4448f11d3b8bd4ce19a5be6e039f6">viewId</a>, which is used to tag each subsequent operation (projection, union, aggregation, filter, or join) that will compose the view.</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">request\_</td>
              <td><a className="el" href="/content/api/cpp/structgpudb_1_1CreateMaterializedViewRequest">Request</a> object containing the parameters for the operation. </td>
            </tr>

            <tr>
              <td className="paramdir">\[out]</td>
              <td className="paramname">response\_</td>
              <td><a className="el" href="/content/api/cpp/structgpudb_1_1CreateMaterializedViewResponse">Response</a> object containing the results of the operation.</td>
            </tr>
          </table>
        </div>
      </div>

      <div className="dl section return">
        <div className="dt">Returns</div>
        <div className="dd"><a className="el" href="/content/api/cpp/structgpudb_1_1CreateMaterializedViewResponse">Response</a> object containing the result of the operation (initially passed in by reference). </div>
      </div>
    </div>
  </div>

  <div id="a4c585a19766a2de5755448429f034b61" />

  <h2 className="memtitle"><span className="permalink"><a href="#a4c585a19766a2de5755448429f034b61">◆ </a></span>createMaterializedView() <span className="overload">\[3/4]</span></h2>

  <div className="memitem">
    <div className="memproto">
      <table className="memname">
        <tr>
          <td className="memname"><a className="el" href="/content/api/cpp/structgpudb_1_1CreateMaterializedViewResponse">CreateMaterializedViewResponse</a> gpudb::GPUdb::createMaterializedView </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::map\< std::string, std::string > &</td>
          <td className="paramname"><span className="paramname"><span className="em">options</span></span> ) const</td>
        </tr>
      </table>
    </div>

    <div className="memdoc">
      <p>Initiates the process of creating a materialized view, reserving the view's name to prevent other views or tables from being created with that name. </p>
      <p>For materialized view details and examples, see <a href="/content/concepts/materialized_views/" target="_top">Materialized Views</a>.</p>
      <p>The response contains <a className="el" href="/content/api/cpp/structgpudb_1_1CreateMaterializedViewResponse#ab6b4448f11d3b8bd4ce19a5be6e039f6">viewId</a>, which is used to tag each subsequent operation (projection, union, aggregation, filter, or join) that will compose the view.</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 to be created that is the top-level table of the materialized view, in \[schema\_name.]table\_name format, using standard <a href="/content/concepts/tables/#table-name-resolution" target="_top">name resolution rules</a> and meeting <a href="/content/concepts/tables/#table-naming-criteria" target="_top">table naming criteria</a>. </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#a58d239e3cec45a6b09e1a17b687047e3">create\_materialized\_view\_collection\_name</a>: \[DEPRECATED–please specify the containing schema for the materialized view as part of <span className="em arg">tableName</span> and use <a className="el" href="#a33d9a0a8e738d14b688f9f869f9640ad">createSchema</a> to create the schema if non-existent] Name of a schema which is to contain the newly created view. If the schema provided is non-existent, it will be automatically created. </li>
                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#a3e66c3f9f3cb5b654e3f1010ef496a68">create\_materialized\_view\_execute\_as</a>: User name to use to run the refresh job. </li>

                  <li>
                    <a className="el" href="/content/api/cpp/namespacegpudb#afe95ed2b6b0d67c5cd7a2f85bfb8d390">create\_materialized\_view\_build\_materialized\_view\_policy</a>: Sets startup materialized view rebuild scheme. Supported values:

                    <ul>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a370c878097b9ffb10fdfa2727d146676">create\_materialized\_view\_always</a>: Rebuild as many materialized views as possible before accepting requests. </li>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#acd189e938d53182834dd5fac8cfa0bf8">create\_materialized\_view\_lazy</a>: Rebuild the necessary materialized views at start, and load the remainder lazily. </li>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#ae3085b8b219e28d4ca9d4220ed711d6b">create\_materialized\_view\_on\_demand</a>: Rebuild materialized views as requests use them. </li>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a102bb0ef1a6453fee16053d4e30d233d">create\_materialized\_view\_system</a>: Rebuild materialized views using the system-configured default. </li>
                    </ul>

                    The default value is <a className="el" href="/content/api/cpp/namespacegpudb#a102bb0ef1a6453fee16053d4e30d233d">create\_materialized\_view\_system</a>.
                  </li>

                  <li>
                    <a className="el" href="/content/api/cpp/namespacegpudb#a7abb96a50ce2c088601ad60347cb72a6">create\_materialized\_view\_persist</a>: If <a className="el" href="/content/api/cpp/namespacegpudb#a46c87771ef9ea8ef6fa1c2a45ccf839e">true</a>, then the materialized view specified in <span className="em arg">tableName</span> will be persisted and will not expire unless a <a className="el" href="/content/api/cpp/namespacegpudb#aef5a0fd18b690d24af4b0a8a5d40f868">ttl</a> is specified. If <a className="el" href="/content/api/cpp/namespacegpudb#a584036d361cdc5c21b5b8f7742f062e7">false</a>, then the materialized view will be an in-memory table and will expire unless a <a className="el" href="/content/api/cpp/namespacegpudb#aef5a0fd18b690d24af4b0a8a5d40f868">ttl</a> is specified otherwise. Supported values:

                    <ul>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a46c87771ef9ea8ef6fa1c2a45ccf839e">create\_materialized\_view\_true</a> </li>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a584036d361cdc5c21b5b8f7742f062e7">create\_materialized\_view\_false</a> </li>
                    </ul>

                    The default value is <a className="el" href="/content/api/cpp/namespacegpudb#a584036d361cdc5c21b5b8f7742f062e7">create\_materialized\_view\_false</a>.
                  </li>

                  <li>
                    <a className="el" href="/content/api/cpp/namespacegpudb#aa269f2545bf21ea65a55215e18716984">create\_materialized\_view\_enable\_mv\_input\_wrappers</a>: If <a className="el" href="/content/api/cpp/namespacegpudb#a46c87771ef9ea8ef6fa1c2a45ccf839e">true</a>, each base table the view reads is accessed through a wrapper view so an in-progress out-of-place update cannot make a record momentarily disappear from the view, and a long refresh does not block updates to the base tables. Overrides the {"{"}gaia.enable\_mv\_input\_wrappers{"}"} configuration default when set. Supported values:

                    <ul>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a46c87771ef9ea8ef6fa1c2a45ccf839e">create\_materialized\_view\_true</a> </li>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a584036d361cdc5c21b5b8f7742f062e7">create\_materialized\_view\_false</a> </li>
                    </ul>

                    The default value is <a className="el" href="/content/api/cpp/namespacegpudb#a584036d361cdc5c21b5b8f7742f062e7">create\_materialized\_view\_false</a>.
                  </li>

                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#a727dca7222b3166e32f85667b8794ffd">create\_materialized\_view\_refresh\_span</a>: Sets the future time-offset(in seconds) at which periodic refresh stops. </li>
                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#aeaf0c559fc2469a20a375406b865d683">create\_materialized\_view\_refresh\_stop\_time</a>: When <a className="el" href="/content/api/cpp/namespacegpudb#a707887aa726f864d1d45ad8e0dc86913">refresh\_method</a> is <a className="el" href="/content/api/cpp/namespacegpudb#a3820f7e67cea78a9d63a6456dd692187">periodic</a>, specifies the time at which a periodic refresh is stopped. Value is a datetime string with format 'YYYY-MM-DD HH:MM:SS'. </li>

                  <li>
                    <a className="el" href="/content/api/cpp/namespacegpudb#a707887aa726f864d1d45ad8e0dc86913">create\_materialized\_view\_refresh\_method</a>: Method by which the join can be refreshed when the data in underlying member tables have changed. Supported values:

                    <ul>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#ac0c7b9d1607509c6795e19c216459568">create\_materialized\_view\_manual</a>: Refresh only occurs when manually requested by calling <a className="el" href="#a25df43fa85e02f0cdb3dab9e498995ce">alterTable</a> with an 'action' of 'refresh'. </li>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a2f3ba76be193eebaa1bccf02ac304e78">create\_materialized\_view\_on\_query</a>: Refresh any time the view is queried. </li>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#ac7c6439ef944407fd5e67962a7431a4c">create\_materialized\_view\_on\_change</a>: If possible, incrementally refresh (refresh just those records added) whenever an insert, update, delete or refresh of input table is done. A full refresh is done if an incremental refresh is not possible. </li>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a3820f7e67cea78a9d63a6456dd692187">create\_materialized\_view\_periodic</a>: Refresh table periodically at rate specified by <a className="el" href="/content/api/cpp/namespacegpudb#a85d515b31d3c177b2b1ee1f707861489">refresh\_period</a>. </li>
                    </ul>

                    The default value is <a className="el" href="/content/api/cpp/namespacegpudb#ac0c7b9d1607509c6795e19c216459568">create\_materialized\_view\_manual</a>.
                  </li>

                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#a85d515b31d3c177b2b1ee1f707861489">create\_materialized\_view\_refresh\_period</a>: When <a className="el" href="/content/api/cpp/namespacegpudb#a707887aa726f864d1d45ad8e0dc86913">refresh\_method</a> is <a className="el" href="/content/api/cpp/namespacegpudb#a3820f7e67cea78a9d63a6456dd692187">periodic</a>, specifies the period in seconds at which refresh occurs. </li>
                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#a2fd6b33db295cb3864d02105f556cae7">create\_materialized\_view\_refresh\_start\_time</a>: When <a className="el" href="/content/api/cpp/namespacegpudb#a707887aa726f864d1d45ad8e0dc86913">refresh\_method</a> is <a className="el" href="/content/api/cpp/namespacegpudb#a3820f7e67cea78a9d63a6456dd692187">periodic</a>, specifies the first time at which a refresh is to be done. Value is a datetime string with format 'YYYY-MM-DD HH:MM:SS'. </li>
                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#aef5a0fd18b690d24af4b0a8a5d40f868">create\_materialized\_view\_ttl</a>: Sets the <a href="/content/concepts/ttl/" target="_top">TTL</a> of the table specified in <span className="em arg">tableName</span>. </li>
                </ul>

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

      <div className="dl section return">
        <div className="dt">Returns</div>
        <div className="dd"><a className="el" href="/content/api/cpp/structgpudb_1_1CreateMaterializedViewResponse">Response</a> object containing the result of the operation. </div>
      </div>
    </div>
  </div>

  <div id="abfa74ba57b3f32437a9855e2ffbc93f2" />

  <h2 className="memtitle"><span className="permalink"><a href="#abfa74ba57b3f32437a9855e2ffbc93f2">◆ </a></span>createMaterializedView() <span className="overload">\[4/4]</span></h2>

  <div className="memitem">
    <div className="memproto">
      <table className="memname">
        <tr>
          <td className="memname"><a className="el" href="/content/api/cpp/structgpudb_1_1CreateMaterializedViewResponse">CreateMaterializedViewResponse</a> & gpudb::GPUdb::createMaterializedView </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::map\< std::string, std::string > &</td>
          <td className="paramname"><span className="paramname"><span className="em">options</span></span>, </td>
        </tr>

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

          <td />

          <td className="paramtype"><a className="el" href="/content/api/cpp/structgpudb_1_1CreateMaterializedViewResponse">CreateMaterializedViewResponse</a> &</td>
          <td className="paramname"><span className="paramname"><span className="em">response\_</span></span> ) const</td>
        </tr>
      </table>
    </div>

    <div className="memdoc">
      <p>Initiates the process of creating a materialized view, reserving the view's name to prevent other views or tables from being created with that name. </p>
      <p>For materialized view details and examples, see <a href="/content/concepts/materialized_views/" target="_top">Materialized Views</a>.</p>
      <p>The response contains <a className="el" href="/content/api/cpp/structgpudb_1_1CreateMaterializedViewResponse#ab6b4448f11d3b8bd4ce19a5be6e039f6">viewId</a>, which is used to tag each subsequent operation (projection, union, aggregation, filter, or join) that will compose the view.</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 to be created that is the top-level table of the materialized view, in \[schema\_name.]table\_name format, using standard <a href="/content/concepts/tables/#table-name-resolution" target="_top">name resolution rules</a> and meeting <a href="/content/concepts/tables/#table-naming-criteria" target="_top">table naming criteria</a>. </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#a58d239e3cec45a6b09e1a17b687047e3">create\_materialized\_view\_collection\_name</a>: \[DEPRECATED–please specify the containing schema for the materialized view as part of <span className="em arg">tableName</span> and use <a className="el" href="#a33d9a0a8e738d14b688f9f869f9640ad">createSchema</a> to create the schema if non-existent] Name of a schema which is to contain the newly created view. If the schema provided is non-existent, it will be automatically created. </li>
                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#a3e66c3f9f3cb5b654e3f1010ef496a68">create\_materialized\_view\_execute\_as</a>: User name to use to run the refresh job. </li>

                  <li>
                    <a className="el" href="/content/api/cpp/namespacegpudb#afe95ed2b6b0d67c5cd7a2f85bfb8d390">create\_materialized\_view\_build\_materialized\_view\_policy</a>: Sets startup materialized view rebuild scheme. Supported values:

                    <ul>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a370c878097b9ffb10fdfa2727d146676">create\_materialized\_view\_always</a>: Rebuild as many materialized views as possible before accepting requests. </li>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#acd189e938d53182834dd5fac8cfa0bf8">create\_materialized\_view\_lazy</a>: Rebuild the necessary materialized views at start, and load the remainder lazily. </li>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#ae3085b8b219e28d4ca9d4220ed711d6b">create\_materialized\_view\_on\_demand</a>: Rebuild materialized views as requests use them. </li>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a102bb0ef1a6453fee16053d4e30d233d">create\_materialized\_view\_system</a>: Rebuild materialized views using the system-configured default. </li>
                    </ul>

                    The default value is <a className="el" href="/content/api/cpp/namespacegpudb#a102bb0ef1a6453fee16053d4e30d233d">create\_materialized\_view\_system</a>.
                  </li>

                  <li>
                    <a className="el" href="/content/api/cpp/namespacegpudb#a7abb96a50ce2c088601ad60347cb72a6">create\_materialized\_view\_persist</a>: If <a className="el" href="/content/api/cpp/namespacegpudb#a46c87771ef9ea8ef6fa1c2a45ccf839e">true</a>, then the materialized view specified in <span className="em arg">tableName</span> will be persisted and will not expire unless a <a className="el" href="/content/api/cpp/namespacegpudb#aef5a0fd18b690d24af4b0a8a5d40f868">ttl</a> is specified. If <a className="el" href="/content/api/cpp/namespacegpudb#a584036d361cdc5c21b5b8f7742f062e7">false</a>, then the materialized view will be an in-memory table and will expire unless a <a className="el" href="/content/api/cpp/namespacegpudb#aef5a0fd18b690d24af4b0a8a5d40f868">ttl</a> is specified otherwise. Supported values:

                    <ul>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a46c87771ef9ea8ef6fa1c2a45ccf839e">create\_materialized\_view\_true</a> </li>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a584036d361cdc5c21b5b8f7742f062e7">create\_materialized\_view\_false</a> </li>
                    </ul>

                    The default value is <a className="el" href="/content/api/cpp/namespacegpudb#a584036d361cdc5c21b5b8f7742f062e7">create\_materialized\_view\_false</a>.
                  </li>

                  <li>
                    <a className="el" href="/content/api/cpp/namespacegpudb#aa269f2545bf21ea65a55215e18716984">create\_materialized\_view\_enable\_mv\_input\_wrappers</a>: If <a className="el" href="/content/api/cpp/namespacegpudb#a46c87771ef9ea8ef6fa1c2a45ccf839e">true</a>, each base table the view reads is accessed through a wrapper view so an in-progress out-of-place update cannot make a record momentarily disappear from the view, and a long refresh does not block updates to the base tables. Overrides the {"{"}gaia.enable\_mv\_input\_wrappers{"}"} configuration default when set. Supported values:

                    <ul>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a46c87771ef9ea8ef6fa1c2a45ccf839e">create\_materialized\_view\_true</a> </li>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a584036d361cdc5c21b5b8f7742f062e7">create\_materialized\_view\_false</a> </li>
                    </ul>

                    The default value is <a className="el" href="/content/api/cpp/namespacegpudb#a584036d361cdc5c21b5b8f7742f062e7">create\_materialized\_view\_false</a>.
                  </li>

                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#a727dca7222b3166e32f85667b8794ffd">create\_materialized\_view\_refresh\_span</a>: Sets the future time-offset(in seconds) at which periodic refresh stops. </li>
                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#aeaf0c559fc2469a20a375406b865d683">create\_materialized\_view\_refresh\_stop\_time</a>: When <a className="el" href="/content/api/cpp/namespacegpudb#a707887aa726f864d1d45ad8e0dc86913">refresh\_method</a> is <a className="el" href="/content/api/cpp/namespacegpudb#a3820f7e67cea78a9d63a6456dd692187">periodic</a>, specifies the time at which a periodic refresh is stopped. Value is a datetime string with format 'YYYY-MM-DD HH:MM:SS'. </li>

                  <li>
                    <a className="el" href="/content/api/cpp/namespacegpudb#a707887aa726f864d1d45ad8e0dc86913">create\_materialized\_view\_refresh\_method</a>: Method by which the join can be refreshed when the data in underlying member tables have changed. Supported values:

                    <ul>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#ac0c7b9d1607509c6795e19c216459568">create\_materialized\_view\_manual</a>: Refresh only occurs when manually requested by calling <a className="el" href="#a25df43fa85e02f0cdb3dab9e498995ce">alterTable</a> with an 'action' of 'refresh'. </li>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a2f3ba76be193eebaa1bccf02ac304e78">create\_materialized\_view\_on\_query</a>: Refresh any time the view is queried. </li>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#ac7c6439ef944407fd5e67962a7431a4c">create\_materialized\_view\_on\_change</a>: If possible, incrementally refresh (refresh just those records added) whenever an insert, update, delete or refresh of input table is done. A full refresh is done if an incremental refresh is not possible. </li>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a3820f7e67cea78a9d63a6456dd692187">create\_materialized\_view\_periodic</a>: Refresh table periodically at rate specified by <a className="el" href="/content/api/cpp/namespacegpudb#a85d515b31d3c177b2b1ee1f707861489">refresh\_period</a>. </li>
                    </ul>

                    The default value is <a className="el" href="/content/api/cpp/namespacegpudb#ac0c7b9d1607509c6795e19c216459568">create\_materialized\_view\_manual</a>.
                  </li>

                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#a85d515b31d3c177b2b1ee1f707861489">create\_materialized\_view\_refresh\_period</a>: When <a className="el" href="/content/api/cpp/namespacegpudb#a707887aa726f864d1d45ad8e0dc86913">refresh\_method</a> is <a className="el" href="/content/api/cpp/namespacegpudb#a3820f7e67cea78a9d63a6456dd692187">periodic</a>, specifies the period in seconds at which refresh occurs. </li>
                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#a2fd6b33db295cb3864d02105f556cae7">create\_materialized\_view\_refresh\_start\_time</a>: When <a className="el" href="/content/api/cpp/namespacegpudb#a707887aa726f864d1d45ad8e0dc86913">refresh\_method</a> is <a className="el" href="/content/api/cpp/namespacegpudb#a3820f7e67cea78a9d63a6456dd692187">periodic</a>, specifies the first time at which a refresh is to be done. Value is a datetime string with format 'YYYY-MM-DD HH:MM:SS'. </li>
                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#aef5a0fd18b690d24af4b0a8a5d40f868">create\_materialized\_view\_ttl</a>: Sets the <a href="/content/concepts/ttl/" target="_top">TTL</a> of the table specified in <span className="em arg">tableName</span>. </li>
                </ul>

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

            <tr>
              <td className="paramdir">\[out]</td>
              <td className="paramname">response\_</td>
              <td><a className="el" href="/content/api/cpp/structgpudb_1_1CreateMaterializedViewResponse">Response</a> object containing the results of the operation.</td>
            </tr>
          </table>
        </div>
      </div>

      <div className="dl section return">
        <div className="dt">Returns</div>
        <div className="dd"><a className="el" href="/content/api/cpp/structgpudb_1_1CreateMaterializedViewResponse">Response</a> object containing the result of the operation (initially passed in by reference). </div>
      </div>
    </div>
  </div>
</div>
