刘艳兵-DBA044-关于cardinality的描述,正确的是?

关于cardinality的描述,正确的是?

A cardinality只可以设置单个表的预估返回行数

B cardinality作用的对象只能是当前查询,无法作用于视图中的对象

C cardinality提示如果不写表名,将会对整个结果集执行预估行数调整

D cardinality除了可以设置单个表的预估返回行数,还可以设置多个表连接的返回行数

答案:D cardinality除了可以设置单个表的预估返回行数,还可以设置多个表连接的返回行数

选项分析:

A选项

  • cardinality 不仅可以设置单个表的预估返回行数,还可以用于设置多个表连接后的预估返回行数等,所以A选项错误。

B选项

  • cardinality 可以作用于视图中的对象。当视图中涉及到对表的查询操作时,可以通过 cardinality 提示来调整视图中查询的表的预估行数,从而影响基于视图的查询计划,所以B选项错误。

C选项

  • 如果不写表名,cardinality 提示并不会对整个结果集执行预估行数调整。通常情况下,必须明确指定要设置预估行数的表或视图等对象,否则无法确定具体要调整哪个对象的预估行数,所以C选项错误。

D选项

  • 如前面所述,cardinality 既可以用于设置单个表的预估返回行数,也可以用于设置多个表连接后的预估返回行数。通过这种方式,可以为优化器提供更准确的统计信息,帮助优化器生成更优的查询计划,所以D选项正确。
相关推荐
小白量化1 小时前
聚宽策略分享-1年化98国九条后中小板微盘小改
大数据·数据库·人工智能·量化·qmt
DBA小马哥7 小时前
Oracle迁移实战:如何轻松跨越异构数据库的学习与技术壁垒
数据库·学习·oracle·信创·国产化平替
哇哈哈&7 小时前
gcc9.2的离线安装,支持gcc++19及以上版本
linux·运维·服务器
暮乘白帝过重山7 小时前
ArkTS ForEach 参数解析:组件与键值生成器
开发语言·数据库
一条咸鱼¥¥¥7 小时前
【运维经验】使用QQ邮箱SMTP服务器设置ssms计划任务完成时邮件发送
运维·服务器·经验分享·sql·sqlserver
【上下求索】8 小时前
学习笔记095——Ubuntu 安装 lrzsz 服务?
运维·笔记·学习·ubuntu
菜鸟plus+8 小时前
N+1查询
java·服务器·数据库
子夜江寒8 小时前
MySQL 表创建与数据导入导出
数据库·mysql
菜鸟小九8 小时前
redis基础(安装配置redis)
数据库·redis·缓存
保定公民9 小时前
达梦数据库使用cp备份集恢复报错分析与解决
数据库