今天进行了cvte的一面,感觉特糟糕,对自己五星差评,以下为总结

cvte一面即终面  3-11
考官给的第一个问题是:给定两个表,一个student(id,name),一个cource(id,stuid,subid(课程id),cource(单门课程的分数)),
让查询出总分数大于300的前三名学生的id,姓名以及总分 ?
答:这个当时没写出来,事后仍然没写出来,真的水平这么水吗?还是他问题出的有毛病?还是我听错了,看官知道解法的请艾特我,
不胜感激!
受指教后的答案:SELECT s.id,s.name,SUM(c.subcource) FROM student s,cource c WHERE s.id=c.stuid GROUP BY c.stuid HAVING 
SUM(c.subcource)>300 ORDER BY SUM(c.subcource) DESC LIMIT 0,3

还问了  如何往student中插一个int型的age字段并且默认为0,我回答了:alter table student add age int default 0;


数据库加索引的好处?
建立索引的好处
创建索引可以大大提高数据库系统的查询性能。
a) 通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性。
b) 可以大大加快数据的检索速度,这也是创建索引的最主要的原因。
c) 可以加速表和表之间的连接,特别是在实现数据的参考完整性方面特别有意义。
d) 在使用分组和排序子句进行数据检索时,同样可以显著减少查询中分组和排序的时间。
e) 通过使用索引,可以在查询的过程中,使用优化隐藏器,提高系统的性能。?
建立索引需要付出的代价
建立索引的目的是加快对表中记录的查找或排序。但是为表设置索引是要付出代价的:这个代价有几个个方面
a) 索引需要占物理空间
除了数据表占数据空间之 外,每一个索引还要占一定的物理空间,如果要建立聚簇索引,那么需要的空间就会更大。
b) 创建索引和维护索引要耗费时间
这种时间随着数据量的增加而增加。
c) 降低维护速度
当对表中的数据进行增加、删除和修改的时候,索引也要动态的维 护,这样就降低了数据的维护速度,同样降低了效率。




还问了mysql 的存储引擎:问你的mysql用的是什么引擎,我答用的是默认的那个InnoDB,还问的InnoDB的特点?我没回答上来都囊了几句
自己都不知道说的啥,总结InnoDB,ISAM和MyISAM的特点?
答:纠正,mysql默认使用的是MySIAM引擎,自抽一巴掌,下边是InnoDB和MyISAM的特点:
InnoDB引擎特点: (一下特性均提高了多用户并发操作的性能表现)
一:提供了具有事务提交,回滚和崩溃能力修复能力的事务安全型表;
二:提供了行锁,提供与Oracle类型一致的不加锁读取;
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值