<div id="docs-body">
 <div class="section">
  <div class="titlepage">
   <div>
    <div>
     <h3 class="title">
      <a name="fulltext-restrictions">
      </a>
      14.9.5 Full-Text Restrictions
     </h3>
    </div>
   </div>
  </div>
  <div class="itemizedlist">
   <ul class="itemizedlist" style="list-style-type: disc; ">
    <li class="listitem">
     <p>
      Full-text searches are supported for
      <a class="link" href="innodb-storage-engine.html" title="Chapter 17 The InnoDB Storage Engine">
       <code class="literal">
        InnoDB
       </code>
      </a>
      and
      <a class="link" href="myisam-storage-engine.html" title="18.2 The MyISAM Storage Engine">
       <code class="literal">
        MyISAM
       </code>
      </a>
      tables only.
     </p>
    </li>
    <li class="listitem">
     <p>
      Full-text searches are not supported for partitioned tables.
            See
      <a class="xref" href="partitioning-limitations.html" title="26.6 Restrictions and Limitations on Partitioning">
       Section 26.6, “Restrictions and Limitations on Partitioning”
      </a>
      .
     </p>
    </li>
    <li class="listitem">
     <p>
      Full-text searches can be used with most multibyte character
            sets. The exception is that for Unicode, the
      <code class="literal">
       utf8mb3
      </code>
      or
      <code class="literal">
       utf8mb4
      </code>
      character set can be used, but not the
      <code class="literal">
       ucs2
      </code>
      character set. Although
      <code class="literal">
       FULLTEXT
      </code>
      indexes on
      <code class="literal">
       ucs2
      </code>
      columns cannot be used, you can
            perform
      <code class="literal">
       IN BOOLEAN MODE
      </code>
      searches on a
      <code class="literal">
       ucs2
      </code>
      column that has no such index.
     </p>
     <p>
      The remarks for
      <code class="literal">
       utf8mb3
      </code>
      also apply to
      <code class="literal">
       utf8mb4
      </code>
      , and the remarks for
      <code class="literal">
       ucs2
      </code>
      also apply to
      <code class="literal">
       utf16
      </code>
      ,
      <code class="literal">
       utf16le
      </code>
      , and
      <code class="literal">
       utf32
      </code>
      .
     </p>
    </li>
    <li class="listitem">
     <p>
      Ideographic languages such as Chinese and Japanese do not
            have word delimiters. Therefore, the built-in full-text
            parser
      <span class="emphasis">
       <em>
        cannot determine where words begin and end
            in these and other such languages
       </em>
      </span>
      .
     </p>
     <p>
      A character-based ngram full-text parser that supports
            Chinese, Japanese, and Korean (CJK), and a word-based MeCab
            parser plugin that supports Japanese are provided for use
            with
      <code class="literal">
       InnoDB
      </code>
      and
      <code class="literal">
       MyISAM
      </code>
      tables.
     </p>
    </li>
    <li class="listitem">
     <p>
      Although the use of multiple character sets within a single
            table is supported, all columns in a
      <code class="literal">
       FULLTEXT
      </code>
      index must use the same
            character set and collation.
     </p>
    </li>
    <li class="listitem">
     <p>
      The
      <a class="link" href="fulltext-search.html#function_match">
       <code class="literal">
        MATCH()
       </code>
      </a>
      column list must
            match exactly the column list in some
      <code class="literal">
       FULLTEXT
      </code>
      index definition for the table,
            unless this
      <a class="link" href="fulltext-search.html#function_match">
       <code class="literal">
        MATCH()
       </code>
      </a>
      is
      <code class="literal">
       IN BOOLEAN MODE
      </code>
      on a
      <code class="literal">
       MyISAM
      </code>
      table. For
      <code class="literal">
       MyISAM
      </code>
      tables, boolean-mode searches can
            be done on nonindexed columns, although they are likely to
            be slow.
     </p>
    </li>
    <li class="listitem">
     <p>
      The argument to
      <code class="literal">
       AGAINST()
      </code>
      must be a
            string value that is constant during query evaluation. This
            rules out, for example, a table column because that can
            differ for each row.
     </p>
     <p>
      The argument to
      <a class="link" href="fulltext-search.html#function_match">
       <code class="literal">
        MATCH()
       </code>
      </a>
      cannot use a rollup column.
     </p>
    </li>
    <li class="listitem">
     <p>
      Index hints are more limited for
      <code class="literal">
       FULLTEXT
      </code>
      searches than for non-
      <code class="literal">
       FULLTEXT
      </code>
      searches.
            See
      <a class="xref" href="index-hints.html" title="10.9.4 Index Hints">
       Section 10.9.4, “Index Hints”
      </a>
      .
     </p>
    </li>
    <li class="listitem">
     <p>
      For
      <code class="literal">
       InnoDB
      </code>
      , all DML operations
            (
      <a class="link" href="insert.html" title="15.2.7 INSERT Statement">
       <code class="literal">
        INSERT
       </code>
      </a>
      ,
      <a class="link" href="update.html" title="15.2.17 UPDATE Statement">
       <code class="literal">
        UPDATE
       </code>
      </a>
      ,
      <a class="link" href="delete.html" title="15.2.2 DELETE Statement">
       <code class="literal">
        DELETE
       </code>
      </a>
      ) involving columns
            with full-text indexes are processed at transaction commit
            time. For example, for an
      <code class="literal">
       INSERT
      </code>
      operation, an inserted string is tokenized and decomposed
            into individual words. The individual words are then added
            to full-text index tables when the transaction is committed.
            As a result, full-text searches only return committed data.
     </p>
    </li>
    <li class="listitem">
     <p>
      The '%' character is not a supported wildcard character for
            full-text searches.
     </p>
    </li>
   </ul>
  </div>
 </div>
 <br/>
</div>
