oracle和mysql去重_数据库面试题及答案

唯一, 不为空, 经常被查询的字段7. 索引的类型有哪些?

逻辑上: 单行索引,多行索引,唯一索引,非唯一索引,函数索引,域索引.

物理上: 分区索引, 非分区索引

B-tree: 正常性B树

反转型B树

bitmap位图索引

8. 什么是事务? 什么是锁?

事务就是被绑在一起作为一个逻辑工作单元的SQL语句分组, 如果任何一个语句操作失败那么整个操作就会失败, 会回滚到之前的状态. 要么全部执行, 要么一个都不执行.

锁: DBMS中, 锁是实现事务的关键.

9. 什么叫视图? 游标是什么?

视图就是一种虚拟的表, 具有和物理表相同的功能. 可以对视图进行增改查操作, 视图通常是一个表或多个表的行或列的子集

游标是遍历结果集的一个指针, 用来逐条处理数据

10. 视图的优缺点?

优点: 对数据的选择性访问

用户可以通过简单的查询从复杂查询中得到结果

维护数据的独立性

对相同的数据产生不同的视图

缺点: 性能

11. 列举几种表连接的方式,有什么区别?

左连接: 左边为主表表数据全部显示, 匹配表的不匹配部分不显示

右连接: 右边为主表表数据全部显示, 匹配表的不匹配部分不显示

内连接: 只有两个元素表相匹配的才能在结果集中显示

全外连接: 连接中的不匹配的数据全部会显示出来

交叉连接: 笛卡尔乘积, 显示的结果是连接表数的乘积

12. 主键和外键的区别?

主键在本表中是唯一的,不为空的, 外键可以重复和为空.

外键和另外一张表相关联, 不能创建对应表中不存在的外键.

13. 在数据库中查询语句速度很慢, 如何优化?

建立索引

减少表之间的关联

优化SQL语句

简化查询字段

14. 数据库三范式是什么?

第一范式: 列不可再分

第二范式: 行可以唯一区分, 主键约束

第三范式: 表的非主属性不能依赖其他表的非主属性外键约束

15. union和union all有什么不同?

union会删掉重复的记录, union all不会

16. varchar2和varchar有什么区别?

varchar2是Oracle自己开发的, 目前varchar2和varchar是同义词, 关键点是varchar是可变长度的, 可以根据实际的长度来存储

17. oracle和mysql的区别?

库函数不同

Oracle是用表空间来管理的, mysql不是

SQL语句不同

分页查询不同

18. oracle语句有多少类型?

DDL, DML, DCL

DDL: 建表,建数据库,建立约束,修改约束,权限修改

DML: insert, update, delete

DCL: 管理用户权限

19. oracle的分页查询语句?

select * from table where row_num between 1 and 10;

20. 从数据库中随机选择50条?

select * from (select * from example order by dbms_random.random) where rownum <= 50;

21. order by与group by的区别?

order by是排序查询

group by是分组查询 having只能在group by之后, 使用group by查询的语句需要使用聚合函数

22. commit在哪里会运用?

Oracle的commit就是DML语句提交数据. 在未提交之前你的操作都是保存在内存中, 没有更新到物理内存中.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值