数据库面试题

数据库相关常见面试题

表和视图的区别是什么?

问题分析
考察面试者对数据库中一些基本概念的理解,了解面试者个人的理解学习能力。

核心问题讲解
	1、视图是已经编译好的sql语句,而表不是。
	2、视图没有实际的物理记录,而表有。
	3、表是内容,视图是窗口。
	4、表占用物理空间而视图不占用物理空间,视图只是逻辑概念的存在;表可以及时对它进行修改,但视图只能用创建的语句来修改。
	5、表是内模式,视图是外模式。
	6、视图是查看数据表的一种方法,可以查询数据表中某些字段构成的数据,只是一些SQL语句的集合。从安全的角度说,视图可以不给用户接触数据表,从而不知道表结构。
	7、表属于全局模式中的表,是实表;视图属于局部模式的表,是虚表。
	8、视图的建立和删除只影响视图本身,不影响对应的基本表。
问题扩展
	视图的优点有什么?
	减少数据的冗余,方便对数据操作;
	数据的安全和保密
	结合项目中使用
	控制用户对表中某些列的访问
数据库的增删改查去重命令是什么?

问题分析
查面试者对数据库的基本操作的熟练度,看面试者是否真的有工作经验。

核心问题讲解
增:
	insert into (列名,列名,列名,...) values(值,值,值,....)
	insert into 表名 values(值,值,值,值,....)
删:
	delete from表名——删除全部数据
	delete from表名where 条件 ——这里的条件是跟select的条件是一样的。
改:
	update 表名 set 列名=值,列名=值..... where 条件
查:
	简单查询
		select * from 表名
		select 列名,列名,...from 表名 ——投影

	等值与不等值查询
		select * from 表名 where 列名=值 --等值查询

	不等值查询
		select * from 表名 where 列名 <> 值
		select * from 表名 where 列名 > 值 >=
		select * from 表名 where 列名 < 值 <=
	多条件查询 逻辑与(and),逻辑或(or)
		select * from 表名 where 条件1 and 条件2 ...
		select * from 表名 where 条件1 or 条件2 ...
		如果在where筛选条件中,既出现and又出现or,则先运算and。除非使用小括号改变优先级。
	范围查询
		select * from Car where Price >=30 and Price<=50
		select * from Car where Price between 30 and 50
		select * from Car where Oil=7.4 or Oil=8.5 or Oil=9.4
		select * from Car where Oil in(7.4,8.5,9.4)
	模糊查询。 一般不用=,而是用like
		%——任意多个任意字符
		_——一个任意字符
		select * from Car where Name like '宝马%'
		宝马%——以宝马开头的
		%宝马——以宝马结尾的
		%宝马%——只要含有宝马这两个字就可以。
		__宝马%——代表第三个字符以宝马开头的。
	去重
		select distinct 列名 from car ——如果列中有重复值,则只查1个出来。
问题扩展
物理删除和逻辑删除的区别:

逻辑删除: 自己设置一个逻辑字段,例如1表示有效,0表示删除即可,默认是1
逻辑删除:其实是UPDATE,增加一个逻辑状态的列(0|1)0表示删除
结合项目中使用
主要用到查询,从数据库中获取数据
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

北风^

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值