动力节点旗下在线教育品牌  |  咨询热线:400-8080-105 学Java全栈,上蛙课网
首页 > 文章

关于Mysql常见的面试题及答案

06-12 16:59 587浏览
举报 T字号
  • 大字
  • 中字
  • 小字

Mysql是一种开放源代码的关系型数据库管理系统,使用最常用的数据库管理语言——结构化查询语言进行数据库管理。在java开发中,mysql数据库占据非常大的作用,所以呢,在面试方面,我们也需要记住一些mysql常见的面试题。今天呢,我们一起看一下Mysql常见的面试题及答案

1、什么是主键什么是外键

主键是表格里的(一个或多个)字段只用来定义表格里的行主键里的值总是唯一的外键是一个用来建立两个表格之间关系的约束这种关系一般都涉及一个表格里的主键字段与另外一个表格(尽管可能是同一个表格)里的一系列相连的字段那么这些相连的字段就是外键。

2、MySQL中的varchar和char有什么区别

char是一个定长字段假如申请了char(10)的空间那么无论实际存储多少内容该字段都占用10个字符varchar是变长的也就是说申请的只是最大长度占用的空间为实际字符长度+1最后一个字符存储使用了多长的空间在检索效率上来讲char > varchar因此在使用中,如果确定某个字段的值的长度可以使用char否则应该尽量使用varchar例如存储用户MD5加密后的密码则应该使用char

3、乐观锁是什么?悲观锁是什么?

悲观锁就是很悲观它对于数据被外界修改的操作持保守态度认为数据随时会修改整个数据处理中需要将数据加锁,悲观锁一般都是依靠关系型数据库提供的锁机制我们之前所学的行锁,表锁不论是读写锁都是悲观锁乐观锁就是很乐观每次自己操作数据的时候认为没有人会来修改它所以不去加锁但是在更新的时候会去判断在此期间数据有没有被修改需要用户自己去实现不会发生并发抢占资源只有在提交操作的时候检查 是否违反数据完整性

4、索引的优缺点什么时候使用索引什么时候不能使用索引

索引最大的好处是提高查询速度缺点是更新数据时效率低因为要同时更新索引对数据进行频繁查询进建立索引如果要频繁更改数据不建议使用索引数据库连接池的作用维护一定数量的连接减少创建连接的时间更快的响应时间

5、除了增删改查之外常用的关键字有哪些?

distinct、limitoffset、order by、union、union all、between、group by

6、mysql中常用的函数有哪些?

sum、count 、avg、min、max

7、union、union all的区别?

对重复结果的处理方面,UNION在进行表链接后会筛选掉重复的记录Union All不会去除重复记录;对排序的处理Union将会按照字段的顺序进行排序UNION ALL只是简单的将两个结果合并后就返回从效率上说UNION ALL 要比UNION快很多

8、NULL是什么意思?

NULL这个值表示UNKNOWN未知它不表示“”(空字符串)。假设SQL Server数据库里有ANSI_NULLS当然在默认情况下会有NULL这个值的任何比较都会生产一个NULL值。不能把任何值与一个 UNKNOWN值进行比较,并在逻辑上希望获得一个答案。必须使用IS NULL操作符。

9、查询A(ID,Name)表中第31至40条记录,ID作为主键可能是不是连续增长的列?

select top 10 * from A where ID >(select max(ID) from (select top 30 ID from A order by A ) T) order by A

10、查询表A中存在ID重复三次以上的记录?

select * from(select count(ID) as count from table group by ID)T where T.count>3

以上就是为大家介绍的Mysql常见的面试题及答案,希望能够对大家有所帮助。

0人推荐
共同学习,写下你的评论
0条评论
向远方
程序员向远方

6篇文章贡献26669字

作者相关文章更多>

推荐相关文章更多>

必须掌握的30种SQL语句优化

不写代码你养我啊08-23 11:30

MySQL开发规范

达芬奇09-04 11:38

ES(Elasticsearch)支持PB级全文搜索引擎入门教程

HelloWorld09-29 17:28

Java面试中的hadoop面试题及答案整理

兔子06-15 17:15

数据库分类之速成篇

呵呵呀06-17 18:54

发评论

举报

0/150

取消