刘艳兵-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选项正确。
相关推荐
李广坤19 小时前
MySQL 大表字段变更实践(改名 + 改类型 + 改长度)
数据库
爱可生开源社区2 天前
2026 年,优秀的 DBA 需要具备哪些素质?
数据库·人工智能·dba
蝎子莱莱爱打怪2 天前
Centos7中一键安装K8s集群以及Rancher安装记录
运维·后端·kubernetes
随逸1772 天前
《从零搭建NestJS项目》
数据库·typescript
DianSan_ERP3 天前
电商API接口全链路监控:构建坚不可摧的线上运维防线
大数据·运维·网络·人工智能·git·servlet
加号33 天前
windows系统下mysql多源数据库同步部署
数据库·windows·mysql
シ風箏3 天前
MySQL【部署 04】Docker部署 MySQL8.0.32 版本(网盘镜像及启动命令分享)
数据库·mysql·docker
李慕婉学姐3 天前
Springboot智慧社区系统设计与开发6n99s526(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
数据库·spring boot·后端
呉師傅3 天前
火狐浏览器报错配置文件缺失如何解决#操作技巧#
运维·网络·windows·电脑
不是二师兄的八戒3 天前
Linux服务器挂载OSS存储的完整实践指南
linux·运维·服务器