<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                [TOC] # 概述 訪問路徑是指數據庫中訪問表的方法,即使用哪個索引來訪問表。 訪問路徑的分析是單表查詢的最重要的問題之一,對于使用主表掃描的訪問路徑來說,執行時間一般與需要掃描的數據量(范圍)成正比。一般來說,可以使用`EXPLAIN EXTENDED`命令,將表掃描的范圍段展示出來。對于有合適索引的查詢,使用索引可以大大減小數據的訪問量,因此對于使用主表掃描的查詢,要分析沒有選中索引掃描的原因,是由于不存在可用的索引,還是索引掃描范圍過大以至于代價過高。 OceanBase 數據庫的路徑選擇方法融合了基于規則的路徑選擇方法和基于代價的路徑選擇方法。OceanBase 數據庫首先會使用基于規則的路徑選擇方法,如果基于規則的路徑選擇方法之后只有一個可選擇的路徑,那么就直接使用該路徑,否則就再使用基于代價的路徑選擇方法選擇一個代價最小的路徑。 在 OceanBase 數據庫中,用戶可以通過 HINT 來指定訪問路徑。訪問路徑的 HINT 形式如下:`/+INDEX(table_name index_name)/` 其中`table_name`表示表的名字,`index_name`表示索引的名字。如果`index_name`是 PRIMARY,代表選擇主表掃描路徑。 如下為用 HINT 來指定訪問路徑的示例: ~~~ obclient>CREATE TABLE t1(a INT PRIMARY KEY, b INT, c INT, d INT, INDEX k1(b,c)); Query OK, 0 rows affected (0.10 sec) obclient>EXPLAIN SELECT/*+INDEX(t1 PRIMARY)*/ * FROM t1; | =================================== |ID|OPERATOR |NAME|EST. ROWS|COST| ----------------------------------- |0 |TABLE SCAN|t1 |1000 |476 | =================================== Outputs & filters: ------------------------------------- 0 - output([t1.a], [t1.b], [t1.c], [t1.d]), filter(nil), access([t1.a], [t1.b], [t1.c], [t1.d]), partitions(p0) obclient>EXPLAIN SELECT/*+INDEX(t1 k1)*/ * FROM t1; | ===================================== |ID|OPERATOR |NAME |EST. ROWS|COST| ------------------------------------- |0 |TABLE SCAN|t1(k1)|1000 |5656| ===================================== Outputs & filters: ------------------------------------- 0 - output([t1.a], [t1.b], [t1.c], [t1.d]), filter(nil), access([t1.a], [t1.b], [t1.c], [t1.d]), partitions(p0) ~~~
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看