云数据库 GAUSSDB-Index Only Scan:示例

时间:2025-03-03 19:28:56

示例

示例:目标列中仅含索引列。

--数据准备。 
gaussdb=# CREATE TABLE test2 (a int, b int); 
CREATE TABLE 
gaussdb=# CREATE INDEX test2_idx ON test2 (a, b); 
CREATE INDEX 

--随机插入1000条数据。
gaussdb=# INSERT INTO test2 VALUES(generate_series(1, 1000), generate_series(1, 1000)); 
INSERT 0 1000

--执行结果 
gaussdb=# EXPLAIN SELECT a, b FROM test2 WHERE a = 10 AND b = 20; 
                                 QUERY PLAN                                  
---------------------------------------------------------------------------- 
 [Bypass] 
 Index Only Scan using test2_idx on test2  (cost=0.00..4.27 rows=1 width=8) 
   Index Cond: ((a = 10) AND (b = 20)) 
(3 rows)

--删除表。
gaussdb=# DROP TABLE test2;

上述示例中,Index Only Scan算子输出信息如下所示。

信息名称

含义

Index Only Scan

算子的名称。

Index Cond

该算子的过滤谓词,示例中的过滤条件为a列的值等于10并且b的值等于20。在查询执行时,满足这些条件的行会被包含在最终的结果集中。

support.huaweicloud.com/centralized-devg-v3-gaussdb/gaussdb-42-1548.html