数据库笔试题解析:连接、UNION与查询优化
版权申诉
93 浏览量
更新于2024-07-07
收藏 40KB DOCX 举报
"数据库笔试题库,包含关于多表查询、UNION操作、SQL聚合函数、索引应用、条件查询以及数据库启动步骤等知识点"
在这些数据库笔试题中,涉及了多个关键的数据库管理和SQL语言概念:
1. 笛卡尔积:在执行SQL查询时,如果没有明确的连接条件,多表查询会产生笛卡尔积,即每张表的每一行与另一张表的所有行组合。例如,T1表有2行,T2表有3行,不指定连接条件的联接会产生6行(2 * 3 = 6)的记录。
2. UNION操作:UNION用于合并两个或更多SELECT语句的结果集,它会去除重复的行。如果T1和T2各有5条不同的数据,T1有2条数据也在T2中,使用UNION将返回8行(5条T1中独有的数据 + 3条T2中独有的数据)。
3. SQL聚合函数SUM:在问题中,对ID和Score求和,正确的格式应是`SELECT ID, SUM(Score) FROM ...`。注意,SUM函数会计算指定列的总和,而不会按行显示原始数据。
4. 索引应用:B选项指出,LIKE通配符在"XXX%"情况下可以利用索引,而在"%xxx%"情况下则不能。这是因为前缀匹配("XXX%")可以使用索引来加速查询,但后缀或通配符匹配("%xxx")通常无法有效利用索引。
5. 条件查询:在WHERE子句中,用OR连接多个条件时,如果需要分别处理每个条件,应使用括号来明确逻辑分组。示例中的查询相当于 `(cust_id=180 OR cust_id=560) OR land_id>750`,可以分解为独立的查询并使用UNION连接。
6. 查询空值:在Staff表中,通过`WHERE Email is null`选择Email为空的员工,而`WHERE Email is not null`则是选择Email非空的员工。
7. Oracle数据库启动步骤:正确的顺序是3(启动实例),1(挂载数据库),2(打开数据库)。因此,正确答案是A。
8. 数据导入:将T1表的所有数据导入到T2表,应使用INSERT INTO SELECT语句,但给出的选项中没有完全正确的表达。正确格式应该是 `INSERT INTO T2 (col1, col2, col3) SELECT col1, col2, col3 FROM T1`。
这些题目覆盖了数据库操作的基础和进阶知识,对于理解SQL语言和数据库管理具有重要意义。学习者可以通过解答这些题目来巩固他们的理论知识和实践经验。
1078 浏览量
2024-10-15 上传
2024-04-26 上传
2023-09-22 上传
2021-09-30 上传
2023-02-14 上传
2011-12-14 上传
621 浏览量
301 浏览量

苦茶子12138
- 粉丝: 1w+
最新资源
- React.js实现的简单HTML5文件拖放上传组件
- iReport:强大的开源可视化报表设计器
- 提升代码整洁性:Eclipse虚线对齐插件指南
- 迷你时间秀:个性化系统时间显示与管理工具
- 使用ruby-install一次性安装多种Ruby版本
- Logality:灵活自定义的JSON日志记录器
- Mogre3D游戏开发实践教程免费分享
- PHP+MySQL实现的简单权限账号管理小程序
- 微信支付统一下单签名错误排查与解决指南
- 虚幻引擎4实现的多边形地图生成器
- TouchJoy:专为触摸屏Windows设备打造的屏幕游戏手柄
- 全方位嵌入式开发工具包:ARM平台必备资源
- Java开发必备:30个实用工具类全解析
- IBM475课程资料深度解析
- Java聊天室程序:全技术栈源码支持与学习指南
- 探索虚拟房屋世界:house-tour-VR应用体验