刘艳兵-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选项正确。
相关推荐
小Mie不吃饭几秒前
FastAPI 小白教程:从入门级到实战(源码教程)
运维·服务器
fo安方1 小时前
运维的利器–监控–zabbix–第三步:配置zabbix–中间件–Tomcat–步骤+验证
运维·中间件·zabbix
时序数据说1 小时前
为什么时序数据库IoTDB选择Java作为开发语言
java·大数据·开发语言·数据库·物联网·时序数据库·iotdb
戒不掉的伤怀2 小时前
【Navicat 连接MySQL时出现错误1251:客户端不支持服务器请求的身份验证协议;请考虑升级MySQL客户端】
服务器·数据库·mysql
超喜欢下雨天2 小时前
服务器安装 ros2时遇到底层库依赖冲突的问题
linux·运维·服务器·ros2
cv高级工程师YKY2 小时前
服务器 - - QPS与TPS介绍
数据库
搬码临时工2 小时前
小企业如何搭建本地私有云服务器,并设置内部网络地址提供互联网访问
运维·服务器
nbsaas-boot2 小时前
高可扩展属性建模设计:架构师的全局思考与落地方案
数据库
爱上语文2 小时前
Redis基础(5):Redis的Java客户端
java·开发语言·数据库·redis·后端
18你磊哥3 小时前
Windows 本地安装部署 Apache Druid
运维·debian