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

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # 46.1\. 查詢經過的路徑 下面是一個簡短的描述,描述一個查詢從開始到得到結果要經過的階段。 1. 首先必須先建立起從應用程序到PostgreSQL服務器的連接。 應用程序向服務器發送查詢然后等待接收從服務器返回的結果。 2. _分析器階段_檢查從應用程序(客戶端)發送過來的查詢, 核對語法并創建一個_查詢樹_。 3. _重寫系統_接收分析階段來的查詢樹且搜索任何應用到查詢樹上的 _規則_(存儲在_系統表_里), 并根據給出的 _規則體_進行轉換。 重寫系統的一個應用就是實現_視圖_。 當一個查詢訪問一個視圖時(也就是一個_虛擬表_),重寫系統改寫用戶的查詢, 使之成為一個訪問在_視圖定義_里給出的對_基本表_的查詢。 4. _規劃器/優化器_接收(改寫后的)查詢樹然后創建一個_查詢規劃_, 這個查詢規劃是_執行器_的輸入。 它(規劃器/優化器)首先創建所有得出相同結果的可能的_路徑_。 例如,如果待掃描的關系上有一個索引,那么掃描的路徑就有兩個。一個可能是簡單的順序查找, 而另一個可能就是使用索引的查找。下一步是計算出不同路徑的執行開銷, 并且選擇和返回開銷最少的那條。開銷最小的路徑然后會被展開成為一個可以供執行器使用的完整的查詢規劃。 5. 執行器遞歸地走過_規劃樹_并且按照規劃指定的方式檢索數據行。 執行器在對關系進行掃描時使用_存儲系統_進行_排序_ 和_連接_,計算_條件_并且最終交回生成的數據行。 在隨后的小節里,將對上面的每一個步驟進行更詳細的討論,以便讓對PostgreSQL 的內部控制和數據結構有一個更準確的理解。
                  <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>

                              哎呀哎呀视频在线观看