暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

openGauss单条查询语句的索引推荐

openGauss小助手 2021-10-24
591

单条查询语句的索引推荐功能支持用户在数据库中直接进行操作,本功能基于查询语句的语义信息和数据库的统计信息,对用户输入的单条查询语句生成推荐的索引。本功能涉及的函数接口如表8-9所示。

表8-9 单query索引推荐功能的函数接口

函数名参数返回值功能
gs_index_adviseSQL语句字符串针对单条查询语句生成推荐索引(该版本只支持B树索引)

使用上述函数,获取针对该query生成的推荐索引,推荐结果由索引的表名和列名组成。

opengauss=> select * from gs_index_advise('SELECT c_discount from bmsql_customer where c_w_id = 10');

table | column

----------------+----------

bmsql_customer | (c_w_id)

(1 row)

上述结果表明:应当在bmsql_customer的c_w_id列上创建索引,例如可以通过下述SQL语句创建索引。

CREATE INDEX idx on bmsql_customer(c_w_id);

某些SQL语句,也可能被推荐创建联合索引,例如:

opengauss=# select * from gs_index_advise('select name, age, sex from t1 where age >= 18 and age < 35 and sex = ''f'';');

table | column

-------+------------

t1 | (age, sex)

(1 row)

上述语句结果表明应该在表t1上创建一个联合索引(age, sex),可以通过下述命令创建该索引,并将其命名为idx1。

CREATE INDEX idx1 on t1(age, sex);

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论