<div id="docs-body">
 <div class="section">
  <div class="titlepage">
   <div>
    <div>
     <h3 class="title">
      <a name="partitioning-columns">
      </a>
      26.2.3 COLUMNS Partitioning
     </h3>
    </div>
   </div>
  </div>
  <div class="toc">
   <dl class="toc">
    <dt>
     <span class="section">
      <a href="partitioning-columns-range.html">
       26.2.3.1 RANGE COLUMNS partitioning
      </a>
     </span>
    </dt>
    <dt>
     <span class="section">
      <a href="partitioning-columns-list.html">
       26.2.3.2 LIST COLUMNS partitioning
      </a>
     </span>
    </dt>
   </dl>
  </div>
  <a class="indexterm" name="idm46045084599280">
  </a>
  <a class="indexterm" name="idm46045084597792">
  </a>
  <a class="indexterm" name="idm46045084596720">
  </a>
  <a class="indexterm" name="idm46045084595632">
  </a>
  <a class="indexterm" name="idm46045084594544">
  </a>
  <a class="indexterm" name="idm46045084593472">
  </a>
  <p>
   The next two sections discuss
   <span class="firstterm">
    <code class="literal">
     COLUMNS
    </code>
    partitioning
   </span>
   , which are variants on
   <code class="literal">
    RANGE
   </code>
   and
   <code class="literal">
    LIST
   </code>
   partitioning.
   <code class="literal">
    COLUMNS
   </code>
   partitioning enables
        the use of multiple columns in partitioning keys. All of these
        columns are taken into account both for the purpose of placing
        rows in partitions and for the determination of which partitions
        are to be checked for matching rows in partition pruning.
  </p>
  <p>
   In addition, both
   <code class="literal">
    RANGE COLUMNS
   </code>
   partitioning
        and
   <code class="literal">
    LIST COLUMNS
   </code>
   partitioning support the use
        of non-integer columns for defining value ranges or list
        members. The permitted data types are shown in the following
        list:
  </p>
  <div class="itemizedlist">
   <ul class="itemizedlist" style="list-style-type: disc; ">
    <li class="listitem">
     <p>
      All integer types:
      <a class="link" href="integer-types.html" title="13.1.2 Integer Types (Exact Value) - INTEGER, INT, SMALLINT, TINYINT, MEDIUMINT, BIGINT">
       <code class="literal">
        TINYINT
       </code>
      </a>
      ,
      <a class="link" href="integer-types.html" title="13.1.2 Integer Types (Exact Value) - INTEGER, INT, SMALLINT, TINYINT, MEDIUMINT, BIGINT">
       <code class="literal">
        SMALLINT
       </code>
      </a>
      ,
      <a class="link" href="integer-types.html" title="13.1.2 Integer Types (Exact Value) - INTEGER, INT, SMALLINT, TINYINT, MEDIUMINT, BIGINT">
       <code class="literal">
        MEDIUMINT
       </code>
      </a>
      ,
      <a class="link" href="integer-types.html" title="13.1.2 Integer Types (Exact Value) - INTEGER, INT, SMALLINT, TINYINT, MEDIUMINT, BIGINT">
       <code class="literal">
        INT
       </code>
      </a>
      (
      <a class="link" href="integer-types.html" title="13.1.2 Integer Types (Exact Value) - INTEGER, INT, SMALLINT, TINYINT, MEDIUMINT, BIGINT">
       <code class="literal">
        INTEGER
       </code>
      </a>
      ), and
      <a class="link" href="integer-types.html" title="13.1.2 Integer Types (Exact Value) - INTEGER, INT, SMALLINT, TINYINT, MEDIUMINT, BIGINT">
       <code class="literal">
        BIGINT
       </code>
      </a>
      . (This is the same as
            with partitioning by
      <code class="literal">
       RANGE
      </code>
      and
      <code class="literal">
       LIST
      </code>
      .)
     </p>
     <p>
      Other numeric data types (such as
      <a class="link" href="fixed-point-types.html" title="13.1.3 Fixed-Point Types (Exact Value) - DECIMAL, NUMERIC">
       <code class="literal">
        DECIMAL
       </code>
      </a>
      or
      <a class="link" href="floating-point-types.html" title="13.1.4 Floating-Point Types (Approximate Value) - FLOAT, DOUBLE">
       <code class="literal">
        FLOAT
       </code>
      </a>
      ) are not supported as
            partitioning columns.
     </p>
    </li>
    <li class="listitem">
     <p>
      <a class="link" href="datetime.html" title="13.2.2 The DATE, DATETIME, and TIMESTAMP Types">
       <code class="literal">
        DATE
       </code>
      </a>
      and
      <a class="link" href="datetime.html" title="13.2.2 The DATE, DATETIME, and TIMESTAMP Types">
       <code class="literal">
        DATETIME
       </code>
      </a>
      .
     </p>
     <p>
      Columns using other data types relating to dates or times
            are not supported as partitioning columns.
     </p>
    </li>
    <li class="listitem">
     <p>
      The following string types:
      <a class="link" href="char.html" title="13.3.2 The CHAR and VARCHAR Types">
       <code class="literal">
        CHAR
       </code>
      </a>
      ,
      <a class="link" href="char.html" title="13.3.2 The CHAR and VARCHAR Types">
       <code class="literal">
        VARCHAR
       </code>
      </a>
      ,
      <a class="link" href="binary-varbinary.html" title="13.3.3 The BINARY and VARBINARY Types">
       <code class="literal">
        BINARY
       </code>
      </a>
      , and
      <a class="link" href="binary-varbinary.html" title="13.3.3 The BINARY and VARBINARY Types">
       <code class="literal">
        VARBINARY
       </code>
      </a>
      .
     </p>
     <p>
      <a class="link" href="blob.html" title="13.3.4 The BLOB and TEXT Types">
       <code class="literal">
        TEXT
       </code>
      </a>
      and
      <a class="link" href="blob.html" title="13.3.4 The BLOB and TEXT Types">
       <code class="literal">
        BLOB
       </code>
      </a>
      columns are not
            supported as partitioning columns.
     </p>
    </li>
   </ul>
  </div>
  <p>
   The discussions of
   <code class="literal">
    RANGE COLUMNS
   </code>
   and
   <code class="literal">
    LIST COLUMNS
   </code>
   partitioning in the next two
        sections assume that you are already familiar with partitioning
        based on ranges and lists as supported in MySQL 5.1 and later;
        for more information about these, see
   <a class="xref" href="partitioning-range.html" title="26.2.1 RANGE Partitioning">
    Section 26.2.1, “RANGE Partitioning”
   </a>
   , and
   <a class="xref" href="partitioning-list.html" title="26.2.2 LIST Partitioning">
    Section 26.2.2, “LIST Partitioning”
   </a>
   , respectively.
  </p>
 </div>
 <br/>
</div>
