c语言解析sql语句_sql语句面试解析题

第一题:

1fb92cdfda4d93033be39e332a317637.png

对于这两张表我已在数据库做了基础模型:

0599c16190624942969c71216305d7a1.png

8797a58ada9cd395decf63b470c7bc69.png

f1917980484cc6b59babf17a5566e369.png

第一解析:计算出所有学生的英语平均成绩,需要运用到数据操作的多表联合查询跟集合函数的avg去求算学生的平均值 select * from 表1 join 表2 on 表1.字段1 = 表2.字段2

答案:select avg(b.english) from c_cust a JOIN m_mark b on a.sno = b.sdo;

875230b23aa7b6196d42cc7d2c4dd62f.png

717a6bbda7f9bd840c61809bb0aeb30b.png

第二解析:运用的知识数据操作里面逻辑判断in跟多表联合查询的用法 由于学号是11,22....我没有添加那多信息,我们就设置3,4,5,6,7学生的学号 ,select * from 表1 join 表2 on 表1.字段1 = 表2.字段2

答案:SELECT a.sdo,a.`name`,a.address,a.telep,b.math from c_cust a JOIN m_mark b ONa.sno = b.sdowhere a.sdo in (3,4,5,6,7);

70d1e7505ef1e0cc43f41d887c931d9e.png

230a88c9f796c624dc71086798ad0bac.png

第三解析:运用的知识多表联合查询跟跟排序order by select * from 表1 join 表2 on 表1.字段1 = 表2.字段2 oder by 字段名 desc;

答案:SELECT a.`name`,b.coputer from c_cust a JOIN m_mark b ON a.sno = b.sdo ORDER BY b.coputer DESC;

7b23ef469fa804f5b6e4080db637aaf6.png

643e76c07677ef56588fd00015b29e76.png

第四题解析:运用知识:多表联合查询跟集合函数sum,逻辑判断“>”,分组group by/having还有排序order by

答案:SELECT a.sdo,a.`name`,sum(b.math+b.english+b.coputer)from c_cust a JOIN m_mark b ON a.sno = b.sdo GROUP BY a.sdo,a.`name` HAVING sum(b.math+b.english+b.coputer)>240 ORDER BY sum(b.math+b.english+b.coputer) DESC;

77aad2a675f858f01b5b66c0ec34d677.png

第二题:

5e8bd2673ef0bd67e1eae91014adac40.png

5521d2c3d3b13ba79d4a039ad6b3d292.png

01689fe3d4051f60f12064698cd93602.png

e123c35b099116c80a37eff3aeba2edf.png

23eb044743c3fab373c641b903086f9e.png

第一题解析:运用的知识集合函数count() 跟逻辑判断"like" select * from 表名 where 字段 like ' 王%';

答案:SELECT COUNT(*) FROM s_stu where stname LIKE '王%';

9a2da7bdd218afb407f0562b70273956.png

79895053d18340b710e58ac0e4d60e94.png

第二题有点懵逼为啥查询出来的是空值:SELECT stid FROM s_stu WHERE (select s_sc.score,c_cou.coname FROM s_sc join c_cou on c_cou.coid = s_sc.cid join s_stu on s_stu.stid = s_sc.sid AND c_cou.coname = 'Mmath')>(select s_sc.score,c_cou.coname FROM s_sc join c_cou on c_cou.coid = s_sc.cid join s_stu on s_stu.stid = s_sc.sid AND c_cou.coname = 'Chineses')

cca17fb8cb7ad3979e0381d537419ff1.png

1e0b5e7d7f1d5dcf7ede12f69694eb1a.png

第三题解析:运用的知识一般查询加上聚合函数'avg()'

答案:SELECT sid,AVG(score)FROM s_sc group by sid having avg(score) >90

0d701544d108f705043626f82db4489e.png
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值