精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

explain 中文man頁面

系統
這條命令顯示PostgreSQL規劃器為所提供的語句生成的執行規劃。 執行規劃顯示語句引用的表是如何被掃描的--- 是簡單的順序掃描,還是索引掃描等 --- 并且如果引用了多個表, 采用了什么樣的連接算法從每個輸入的表中取出所需要的記錄。

NAME

EXPLAIN - 顯示語句執行規劃

SYNOPSIS

EXPLAIN [ ANALYZE ] [ VERBOSE ] statement

DESCRIPTION 描述


 這條命令顯示PostgreSQL規劃器為所提供的語句生成的執行規劃。 執行規劃顯示語句引用的表是如何被掃描的--- 是簡單的順序掃描,還是索引掃描等 --- 并且如果引用了多個表, 采用了什么樣的連接算法從每個輸入的表中取出所需要的記錄。


 顯示出來的最關鍵的部分是預計的語句執行開銷, 這就是規劃器對運行該語句所需時間的估計(以磁盤頁面存取為單位計量)。 實際上顯示了兩個數字:返回***行記錄前的啟動時間, 和返回所有記錄的總時間。對于大多數查詢而言,關心的是總時間,但是, 在某些環境下,比如一個 EXISTS 子查詢里, 規劃器將選擇最小啟動時間而不是最小總時間(因為執行器在獲取一條記錄后總是要停下來)。 同樣,如果你用一條 LIMIT 子句限制返回的記錄數, 規劃器會在最終的開銷上做一個合理的插值以計算哪個規劃開銷最省。

ANALYZE 選項導致查詢被實際執行,而不僅僅是規劃。 它在顯示中增加了在每個規劃節點內部花掉的總時間(以毫秒計)和它實際返回的行數。 這些數據對搜索該規劃器的預期是否和現實相近很有幫助。

Important:
 要記住的是查詢實際上在使用 ANALYZE 的時候是執行的。 盡管 EXPLAIN 會拋棄任何 SELECT 會返回的輸出, 但是其它查詢的副作用還是一樣會發生的。 如果你在 INSERT,UPDATE,DELETE,或者 EXECUTE 語句里使用 EXPLAIN ANALYZE,而且還不想讓查詢影響你的數據, 用下面的方法:
BEGIN;
EXPLAIN ANALYZE ...;
ROLLBACK;

PARAMETERS 參數

ANALYZE

 執行命令并顯示實際運行時間。
VERBOSE

 顯示規劃樹完整的內部表現形式,而不僅僅是一個摘要。通常,這個選項只是在調試 PostgreSQL 的時候有用。 VERBOSE 輸出可能是打印得工整的,也可能不是, 具體取決于配置參數 explain_pretty_print。
statement

 任何 SELECTINSERTUPDATE, DELETE, EXECUTE, 或 DECLARE 語句。

NOTES 注意


 在 PostgreSQL 里只有很少的一些文檔介紹有關優化器計算開銷的問題。參考 Section 13.1 ``Using EXPLAIN'' 獲取更多信息。


 為了讓 PostgreSQL 查詢規劃器在優化查詢的時候做出合理的判斷, 我們需要運行 ANALYZE 語句以記錄有關數據在表中的分布的統計信息。 如果你沒做過這件事情(或者如果自上次 ANALYZE 以來, 表中的數據統計分布發生了顯著變化),那么計算出來的開銷預計很可能與查詢的實際屬性并不對應, 因此很可能會選取一個比較差的查詢規劃。


 在 PostgreSQL 7.3 以前,查詢規劃是以 NOTICE 消息的形式發出來的。 現在它的顯示格式是一個查詢結果(格式化成了類似一個有單個文本字段的表。)  

EXAMPLES 例子


 顯示一個對只有一個 int4 列和 10000 行的表的簡單查詢的查詢規劃:

EXPLAIN SELECT * FROM foo;

                       QUERY PLAN
---------------------------------------------------------
 Seq Scan on foo  (cost=0.00..155.00 rows=10000 width=4)
(1 row)


 如果存在一個索引,并且我們使用一個可應用索引的 WHERE 條件的查詢, EXPLAIN 會顯示不同的規劃:

EXPLAIN SELECT * FROM foo WHERE i = 4;

                         QUERY PLAN
--------------------------------------------------------------
 Index Scan using fi on foo  (cost=0.00..5.98 rows=1 width=4)
   Index Cond: (i = 4)
(2 rows)


 下面是一個使用了聚集函數的查詢的查詢規劃:

EXPLAIN SELECT sum(i) FROM foo WHERE i < 10;

                             QUERY PLAN
---------------------------------------------------------------------
 Aggregate  (cost=23.93..23.93 rows=1 width=4)
   ->  Index Scan using fi on foo  (cost=0.00..23.92 rows=6 width=4)
         Index Cond: (i < 10)
(3 rows)


 下面是一個使用 EXPLAIN EXECUTE 顯示一個已準備好的查詢規劃的例子:

PREPARE query(int, int) AS SELECT sum(bar) FROM test
    WHERE id > $1 AND id < $2
    GROUP BY foo;

EXPLAIN ANALYZE EXECUTE query(100, 200);

                                                       QUERY PLAN                                                        
-------------------------------------------------------------------------------------------------------------------------
 HashAggregate  (cost=39.53..39.53 rows=1 width=8) (actual time=0.661..0.672 rows=7 loops=1)
   ->  Index Scan using test_pkey on test  (cost=0.00..32.97 rows=1311 width=8) (actual time=0.050..0.395 rows=99 loops=1)
         Index Cond: ((id > $1) AND (id < $2))
 Total runtime: 0.851 ms
(4 rows)


 注意這里顯示的數字, 甚至還有選擇的查詢策略都有可能在各個 PostgreSQL版本之間不同--因為規劃器在不斷改進。 另外,ANALYZE 命令使用隨機的采樣來估計數據統計; 因此,一次新的 ANALYZE 運行之后開銷估計可能會變化, 即使數據的實際分布沒有改變也這樣。  

COMPATIBILITY 兼容性


 在 SQL 標準中沒有EXPLAIN 語句。  

#p#

NAME

EXPLAIN - show the execution plan of a statement

SYNOPSIS

EXPLAIN [ ANALYZE ] [ VERBOSE ] statement

DESCRIPTION

This command displays the execution plan that the PostgreSQL planner generates for the supplied statement. The execution plan shows how the table(s) referenced by the statement will be scanned---by plain sequential scan, index scan, etc.---and if multiple tables are referenced, what join algorithms will be used to bring together the required row from each input table.

The most critical part of the display is the estimated statement execution cost, which is the planner's guess at how long it will take to run the statement (measured in units of disk page fetches). Actually two numbers are shown: the start-up time before the first row can be returned, and the total time to return all the rows. For most queries the total time is what matters, but in contexts such as a subquery in EXISTS, the planner will choose the smallest start-up time instead of the smallest total time (since the executor will stop after getting one row, anyway). Also, if you limit the number of rows to return with a LIMIT clause, the planner makes an appropriate interpolation between the endpoint costs to estimate which plan is really the cheapest.

The ANALYZE option causes the statement to be actually executed, not only planned. The total elapsed time expended within each plan node (in milliseconds) and total number of rows it actually returned are added to the display. This is useful for seeing whether the planner's estimates are close to reality.

Important: Keep in mind that the statement is actually executed when ANALYZE is used. Although EXPLAIN will discard any output that a SELECT would return, other side effects of the statement will happen as usual. If you wish to use EXPLAIN ANALYZE on an INSERT, UPDATE, DELETE, or EXECUTE statement without letting the command affect your data, use this approach:
BEGIN;
EXPLAIN ANALYZE ...;
ROLLBACK;

PARAMETERS

ANALYZE
Carry out the command and show the actual run times.
VERBOSE
Show the full internal representation of the plan tree, rather than just a summary. Usually this option is only useful for debugging PostgreSQL. The VERBOSE output is either pretty-printed or not, depending on the setting of the explain_pretty_print configuration parameter.
statement
Any SELECT, INSERT, UPDATE, DELETE, EXECUTE, or DECLARE statement, whose execution plan you wish to see.

NOTES

There is only sparse documentation on the optimizer's use of cost information in PostgreSQL. Refer to the section called ``Using EXPLAIN'' in the documentation for more information.

In order to allow the PostgreSQL query planner to make reasonably informed decisions when optimizing queries, the ANALYZE statement should be run to record statistics about the distribution of data within the table. If you have not done this (or if the statistical distribution of the data in the table has changed significantly since the last time ANALYZE was run), the estimated costs are unlikely to conform to the real properties of the query, and consequently an inferior query plan may be chosen.

Prior to PostgreSQL 7.3, the plan was emitted in the form of a NOTICE message. Now it appears as a query result (formatted like a table with a single text column).  

EXAMPLES

To show the plan for a simple query on a table with a single integer column and 10000 rows:

EXPLAIN SELECT * FROM foo;

                       QUERY PLAN
---------------------------------------------------------
 Seq Scan on foo  (cost=0.00..155.00 rows=10000 width=4)
(1 row)

If there is an index and we use a query with an indexable WHERE condition, EXPLAIN might show a different plan:

EXPLAIN SELECT * FROM foo WHERE i = 4;

                         QUERY PLAN
--------------------------------------------------------------
 Index Scan using fi on foo  (cost=0.00..5.98 rows=1 width=4)
   Index Cond: (i = 4)
(2 rows)

And here is an example of a query plan for a query using an aggregate function:

EXPLAIN SELECT sum(i) FROM foo WHERE i < 10;

                             QUERY PLAN
---------------------------------------------------------------------
 Aggregate  (cost=23.93..23.93 rows=1 width=4)
   ->  Index Scan using fi on foo  (cost=0.00..23.92 rows=6 width=4)
         Index Cond: (i < 10)
(3 rows)

Here is an example of using EXPLAIN EXECUTE to display the execution plan for a prepared query:

PREPARE query(int, int) AS SELECT sum(bar) FROM test
    WHERE id > $1 AND id < $2
    GROUP BY foo;

EXPLAIN ANALYZE EXECUTE query(100, 200);

                                                       QUERY PLAN                                                        
-------------------------------------------------------------------------------------------------------------------------
 HashAggregate  (cost=39.53..39.53 rows=1 width=8) (actual time=0.661..0.672 rows=7 loops=1)
   ->  Index Scan using test_pkey on test  (cost=0.00..32.97 rows=1311 width=8) (actual time=0.050..0.395 rows=99 loops=1)
         Index Cond: ((id > $1) AND (id < $2))
 Total runtime: 0.851 ms
(4 rows)

Of course, the specific numbers shown here depend on the actual contents of the tables involved. Also note that the numbers, and even the selected query strategy, may vary between PostgreSQL releases due to planner improvements. In addition, the ANALYZE command uses random sampling to estimate data statistics; therefore, it is possible for cost estimates to change after a fresh run of ANALYZE, even if the actual distribution of data in the table has not changed.  

COMPATIBILITY

There is no EXPLAIN statement defined in the SQL standard.

責任編輯:韓亞珊 來源: CMPP.net
相關推薦

2011-08-24 16:48:36

man中文man

2011-08-15 10:21:09

man中文man

2011-08-11 16:11:49

at中文man

2011-08-25 10:21:56

man.conf中文man

2011-08-16 10:21:13

setconsole中文man

2011-08-24 17:06:42

NOTIFY中文man

2011-08-16 09:32:01

quotaoff中文man

2011-08-23 18:05:21

ABORT中文man

2011-08-25 18:14:26

tcflow中文man

2011-08-25 16:55:26

gets中文man

2011-08-12 11:07:19

git中文man

2011-08-25 17:30:26

setbuf中文man

2011-08-15 13:14:44

rmdir中文man

2011-08-24 17:00:04

netdevice中文man

2011-11-01 13:46:50

中文mantac

2011-08-15 09:55:01

ls中文man

2011-08-24 16:20:09

load中文man

2011-08-25 15:47:06

fopen中文man

2011-08-25 16:25:30

fputs中文man

2011-08-25 10:49:28

rpc中文man
點贊
收藏

51CTO技術棧公眾號

日本wwwxxxx| 俄罗斯毛片基地| 免费v片在线观看| 久久影院电视剧免费观看| 国产精品你懂得| 青青操国产视频| 免费电影一区二区三区| 欧美日韩成人一区| 久久久久久久久久久视频| 国产精品ⅴa有声小说| 国产老妇另类xxxxx| 热99精品只有里视频精品| 成人自拍小视频| 先锋影音国产精品| 欧美一区二区三区四区高清| 欧美日韩激情视频在线观看| 黄色免费网站在线| 久久综合久久鬼色| 岛国视频一区| 97人人爽人人爽人人爽| 最新日韩在线| 欧美成人网在线| 天天操天天舔天天射| 都市激情久久| 日韩一区二区高清| 国产精品区在线| 亚洲人成午夜免电影费观看| 亚洲综合激情小说| 在线国产精品网| 福利在线播放| 久久亚洲一区二区三区四区| 懂色一区二区三区av片| 国产精品久久久久久久免费| 久久www成人_看片免费不卡| 欧美极品第一页| 91高清免费看| 国产精品videosex性欧美| 亚洲品质视频自拍网| 艳妇乳肉豪妇荡乳xxx| 91久久精品无嫩草影院| 欧美精品丝袜久久久中文字幕| 黄色片久久久久| 国产厕拍一区| 欧美三级中文字幕在线观看| 激情深爱综合网| 免费网站在线观看人| 欧美激情亚洲自拍| 一本在线免费视频| 免费视频国产一区| 亚洲精品久久久久久下一站 | 国产精品swag| www黄色在线观看| 国产精品资源在线看| 91久久精品国产| 国产精品午夜福利| 国内一区二区视频| 亚洲bt欧美bt日本bt| 91在线你懂的| 国产在线麻豆精品观看| 91久久夜色精品国产网站| 国产女人18毛片水真多| 国产一区二区三区国产| 91在线看网站| 丰满人妻一区二区三区免费视频| 国产成人亚洲综合色影视| 5g国产欧美日韩视频| www.久久综合| 成a人片国产精品| 久久久久久久久久久久久9999| 三级理论午夜在线观看| 欧美激情在线观看视频免费| 欧美成人精品| 日本vs亚洲vs韩国一区三区 | 91大片在线观看| 国产成人麻豆精品午夜在线| 国产99一区视频免费| 韩日午夜在线资源一区二区| 欧美大片aaa| 亚洲国产精品成人综合| 国产又粗又爽又黄的视频| 污污的视频在线观看| 亚洲国产一区视频| 无码人妻丰满熟妇区毛片18| 色综合视频一区二区三区日韩 | 亚洲人妻一区二区三区| 国产欧美日韩三区| 福利网在线观看| av中文字幕在线观看第一页| 91高清视频免费看| 一级黄色大片儿| 欧美日韩一区二区三区四区不卡| 亚洲最新av在线| 免费中文字幕在线观看| 久久这里只有| 91免费观看网站| 五月天婷婷在线播放| 中文字幕av在线一区二区三区| 欧美一级特黄aaaaaa在线看片| 日韩深夜视频| 欧美一级专区免费大片| 制服丝袜第二页| 91精品天堂福利在线观看| 91av在线免费观看| 国产综合18久久久久久| 日本高清视频免费观看| 欧美国产精品一区| 怡红院av亚洲一区二区三区h| 精品福利在线| 日韩精品在线观看网站| 欧美日韩一级在线观看| 日韩一区精品视频| 国产一区免费观看| 麻豆tv在线| 色国产精品一区在线观看| 在线播放av网址| 希岛爱理av一区二区三区| 日韩av电影手机在线观看| www.色日本| 中文字幕制服丝袜成人av| 午夜肉伦伦影院| 盗摄牛牛av影视一区二区| 久久影院资源网| 一区二区视频免费| 久久久国产精品麻豆| 国产九九九九九| 日本精品在线播放| 日韩视频亚洲视频| 丰满人妻一区二区三区四区| 2021久久国产精品不只是精品| 久久av综合网| 66精品视频在线观看| 久久中文字幕在线| 国产免费不卡视频| 1区2区3区精品视频| 亚洲 欧美 日韩系列| 天天久久夜夜| 91成人在线观看国产| 欧洲av在线播放| 亚洲国产sm捆绑调教视频| 国产精品19p| 欧美1区视频| 亚洲最大成人网色| 日本aa在线| 精品国产乱码久久久久久免费 | 午夜日韩激情| 亚洲影院高清在线| 欧美人动性xxxxz0oz| 日韩视频免费观看高清完整版在线观看| 国产三级aaa| 精品一区二区在线看| 国产成年人在线观看| 中文字幕成人| 日韩一区二区福利| 国产精品视频在线观看免费| 亚洲人123区| 岛国av免费观看| 在哪里可以看毛片| 亚洲电影一级片| 2019中文字幕全在线观看| 偷拍自拍在线| 色综合色综合色综合 | 国产精品福利一区二区三区| 羞羞的视频在线| 国产精品久久久久久| 91最新国产视频| 美洲精品一卡2卡三卡4卡四卡| 亚洲第一页自拍| 99精品人妻国产毛片| 亚洲国产成人一区二区三区| 91蝌蚪视频在线| 一区精品久久| 欧美一区1区三区3区公司| 成人涩涩视频| 欧美激情性做爰免费视频| 天堂中文字幕在线| 欧美三区在线观看| 欧美三级在线免费观看| 99久免费精品视频在线观看| 精品久久久噜噜噜噜久久图片| 天天射天天综合网| 粉嫩精品一区二区三区在线观看| 在线女人免费视频| 色偷偷av一区二区三区| 少妇人妻偷人精品一区二区| 在线日韩av片| 欧美成人精品欧美一| 久久综合九色欧美综合狠狠| 国产成人在线综合| 亚洲深爱激情| 法国空姐在线观看免费| 色吊丝一区二区| 91网站在线看| 69久成人做爰电影| 欧美精品在线观看91| 国产在线中文字幕| 欧美不卡在线视频| 最新中文字幕免费| 亚洲444eee在线观看| 亚洲天堂最新地址| 成人激情黄色小说| 在线观看岛国av| 亚洲专区一区| 香蕉视频在线网址| 国产99久久久国产精品成人免费| 91欧美激情另类亚洲| 老司机成人影院| 久久成人精品一区二区三区| 国产黄色免费在线观看| 亚洲成年人在线播放| 国产理论片在线观看| 色综合欧美在线视频区| 久久久久久久久久综合| 国产精品美女久久久久久久久久久| 在线看黄色的网站| 国产乱子轮精品视频| 成年网站在线播放| 亚洲综合国产| 国产一线二线三线女| 婷婷精品进入| 亚洲一卡二卡三卡| 欧美精选一区二区三区| 精品视频一区在线| 国产精品jk白丝蜜臀av小说| 91在线观看网站| 国产亚洲字幕| 91精品啪aⅴ在线观看国产| 外国电影一区二区| 国产v综合v亚洲欧美久久| 国产白浆在线免费观看| 久久久久亚洲精品国产| 伊人影院在线视频| 美日韩精品免费视频| 黄色一级片在线观看| 久久九九全国免费精品观看| 91网在线播放| xxx欧美精品| 老司机福利在线视频| 日韩亚洲一区二区| 免费在线观看av网站| 日韩天堂在线视频| 日本激情视频在线观看| 久久精品91久久香蕉加勒比| 日本中文字幕视频在线| 日韩一区二区久久久| 麻豆网站在线| 久久亚洲电影天堂| 亚洲小说区图片| 欧美黄色三级网站| 草草影院在线| 国产69久久精品成人| 国产高清不卡| 国产精品久久久久久久久免费| 欧美影视资讯| 91亚洲午夜在线| 一区三区自拍| 精品高清视频| 国产成人三级| 伊人天天久久大香线蕉av色| 91成人影院| 每日在线观看av| 亚洲综合三区| 亚洲国产精品三区| 国内精品免费**视频| 一区二区在线免费观看视频| 成人av网站在线观看免费| 中文字幕av观看| 国产精品久久久久影视| a级黄色片免费看| 亚洲va欧美va国产va天堂影院| 女人十八岁毛片| 欧美日精品一区视频| 国产成人av免费看| 亚洲精品国产精品乱码不99按摩| 可以直接在线观看的av| 色婷婷**av毛片一区| 丁香花在线高清完整版视频| 热久久免费视频精品| a一区二区三区亚洲| 国产一区二区视频在线免费观看 | 成人av在线看| av电影在线不卡| 一区二区三区免费在线观看| 天堂а√在线中文在线新版| 欧美美女黄视频| 天堂国产一区二区三区| 最近日韩中文字幕中文| free性欧美| 91精品国产综合久久久久久久久| 荡女精品导航| 伊人av成人| 亚洲专区免费| 无套白嫩进入乌克兰美女| 26uuu国产日韩综合| 欧美精品久久久久久久久46p| 色综合久久综合| 亚洲女人18毛片水真多| 中文国产成人精品| av中文字幕在线观看第一页| 91免费综合在线| 精品理论电影| 波多野结衣综合网| 国内精品免费在线观看| 国产又粗又猛又爽视频| 亚洲午夜激情av| 999av视频| 中国人与牲禽动交精品| 中文不卡1区2区3区| 成人国产一区二区| 欧美jizz| 国产精品无码一本二本三本色| 不卡的看片网站| 青娱乐免费在线视频| 欧美日韩美少妇| 国产高清视频免费最新在线| 欧美日韩亚洲精品一区二区三区| 老太脱裤子让老头玩xxxxx| 久久超碰97中文字幕| 蜜桃传媒一区二区亚洲av| 亚洲少妇30p| 丰满熟女人妻一区二区三| 日韩电影在线观看中文字幕 | 日韩在线播放一区| 日本高清免费在线视频| av一区二区三区黑人| 午夜免费激情视频| 7777精品伊人久久久大香线蕉经典版下载 | 欧美aaa在线| 色欲av无码一区二区三区| 亚洲午夜av在线| 午夜精品在线播放| 久久国产天堂福利天堂| 91精品福利观看| 亚洲自拍偷拍二区| 免费观看30秒视频久久| 免费看黄色三级| 在线中文字幕一区| 国产在线一二三区| 日韩av片电影专区| 蜜桃国内精品久久久久软件9| 国产中文字幕视频在线观看| proumb性欧美在线观看| 日本一二三区不卡| 亚洲精品久久7777777| 国产美女情趣调教h一区二区| 97国产超碰| 一区二区亚洲| 三级黄色片网站| 色av综合在线| av天在线观看| 国产有码一区二区| 午夜视频一区| 欧美xxxx日本和非洲| 亚洲国产va精品久久久不卡综合| 特级丰满少妇一级aaaa爱毛片| 国外成人在线视频| 牲欧美videos精品| 国产欧美高清在线| 国产精品视频免费看| 国产又粗又猛又爽又黄的| 久久国产精品电影| 久久aimee| 欧美一级裸体视频| 亚洲视频中文字幕| 蜜桃av噜噜一区二区三区麻豆| 久久久久久久久久av| 三级小说欧洲区亚洲区| av网站在线不卡| 亚洲另类一区二区| 天天av天天翘| 国产精品高清免费在线观看| 偷拍欧美精品| 中文字幕人妻一区| 91久久一区二区| caoporn免费在线| 久久国产精品精品国产色婷婷| 久久激情视频| 国产一区二区视频在线观看免费| 精品国产亚洲一区二区三区在线观看| 伊人成综合网站| 综合色婷婷一区二区亚洲欧美国产| 国产精品一区二区久激情瑜伽| 在线观看精品国产| 日韩在线视频国产| 女一区二区三区| 五月激情婷婷在线| 欧美日韩在线免费观看| 色综合久久久久综合一本到桃花网| 懂色中文一区二区三区在线视频| 视频一区在线播放| 久艹视频在线观看| 一本色道久久综合亚洲精品小说 | 奇米精品一区二区三区在线观看一| 中文字幕电影av| 亚洲精选中文字幕| 日韩在线成人| 9久久婷婷国产综合精品性色 | 韩国精品久久久999| 日韩电影免费网址| 国产乱了高清露脸对白| 91精品国产一区二区三区蜜臀 |