当前位置: 首页 > news >正文

厦门微信网站建武汉seo论坛

厦门微信网站建,武汉seo论坛,建筑设计参考网站,小网站开发最近面试遇到一个SQL题,复述如下: SQL面试题 现在有两张表,结构如下: 学生表(student) 学号sid姓名name1张三2李四3王五 成绩表(score) 序号id学号sid科目subject分数score11语…

最近面试遇到一个SQL题,复述如下:

SQL面试题

现在有两张表,结构如下:
学生表(student)

学号sid姓名name
1张三
2李四
3王五

成绩表(score)

序号id学号sid科目subject分数score
11语文80
21数学90
32语文85
42数学100
53语文70
63数学60
  1. 写一个SQL,查出每个人的总分,并按倒序排列。输出字段如下:
姓名总分
  1. 最近学校要举行乒乓球运动会,准备采用循环赛,即每个人都与其他人都要比赛。写一个SQL列出每一场比赛的参赛人员,按顺序输出。
A组B组

解答

  1. 考虑到成绩表中都是单科成绩,这里需要查询总成绩,那就先汇总计算总成绩;输出还要显示姓名,就在外层查询中关联查询姓名:
select s.name as '姓名', total as '总分' from student s left join (select sid, sum(score) as total from score group by sid
) t on s.id = t.sid order by total desc;

还可以直接关联查询:

select name as '姓名', sum(`score`) as '总分' from student u, `score` s 
where u.id = s.sid group by s.sid order by sum(score) desc;

输出结果:

+----+-----+
|name|total|
+----+-----+
|李四  |  185|
|张三  |  170|
|赵六  |  138|
|王五  |  130|
+----+-----+
  1. 既然要输出全部循环数据,那可以考虑使用join
select a.name as 'A组', b.name as 'B组' from student a join student b on a.id!=b.id;

输出结果:

+----+-----+
|A组|B组|
+----+-----+
|赵六  |张三  |
|王五  |张三  |
|李四  |张三  |
|赵六  |李四  |
|王五  |李四  |
|张三  |李四  |
|赵六  |王五  |
|李四  |王五  |
|张三  |王五  |
|王五  |赵六  |
|李四  |赵六  |
|张三  |赵六  |
+----+-----+

注意,上述输出中包含两条张三和李四的记录,即每个人作为A组比赛一次,作为B组再比赛一次。如果两个人只比赛一次,可以考虑利用id大小进行去重。

select a.name as 'A组', b.name as 'B组' from student a join student b on a.id<b.id;

输出结果:

+----+-----+
|A组|B组|
+----+-----+
|张三|李四|
|张三|王五|
|张三|赵六|
|李四|王五|
|李四|赵六|
|王五|赵六|
+----+-----+

平时使用join写SQL时一般使用的等值连接,即在on后面紧跟着表的主键等于另一个表的某一列,很少使用不等于或其他比较操作符判断。在语法上,可以使用等值连接以外的方式,这种类型的连接被称为非等值连接或范围连接。但在实际应用中,使用非等值连接可能会导致较大的中间结果集,特别是在数据量大的情况下,这可能会影响查询性能。故不推荐使用!!!

http://www.hengruixuexiao.com/news/9845.html

相关文章:

  • 陕西西乡网站建设百度竞价代理商
  • 广州正规网站建设sem竞价托管费用
  • 网站制作难吗谷歌搜索引擎香港免费入口
  • 做自己的网站难不难软文广告范例大全
  • 微信网站建设模板seo的基本内容
  • 网站建设与网页设计 视频教程东莞网络营销代运营
  • 做网站好还是网页好seo优化推广软件
  • 在哪里可以学做饰品网站肇庆seo按天计费
  • 顺德做营销网站公司拉新平台哪个好佣金高
  • 网站导航设计佛山疫情最新情况
  • sucuri wordpress首页优化排名
  • 海口小微企业网站建设成都搜狗seo
  • 酒店如何做网站电子商务推广
  • 门户网站制作模板广州网络推广策划公司
  • 成都网站制作公司dedecms网站优化就是搜索引擎优化
  • 新疆建设网站统计报直报平台研究生培训机构排名
  • 做阿里巴巴网站店铺装修费用磁力王
  • 付费的网站是指google搜索优化方法
  • 服饰类网站开发项目搭建网站需要哪些步骤
  • 广东省建设工程安全协会网站seo快速排名工具
  • wordpress hasnavmenuseo定义
  • 唐山建设局网站做互联网推广的公司
  • 泊头哪有哪家做网站做的号网络推广公司收费标准
  • 公司网站建设的费用如何入账省好多会员app
  • 深圳营销型网站制作公司进一步优化落实
  • 网站关键词排名忽然网络营销的主要传播渠道
  • 放网站的图片做多大分辨率百度在西安有分公司吗
  • 汕头站扩建seo公司资源
  • 长基建站郑州竞价托管
  • BVDO 网站开发流程综合查询