Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >MySQL多表联合查询+分组+排序

MySQL多表联合查询+分组+排序

作者头像
红目香薰
发布于 2024-04-03 01:12:05
发布于 2024-04-03 01:12:05
59700
代码可运行
举报
文章被收录于专栏:CSDNToQQCodeCSDNToQQCode
运行总次数:0
代码可运行

 DDL——学生表——成绩表

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
CREATE TABLE `student` (
  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '学号',
  `createDate` datetime DEFAULT NULL,
  `userName` varchar(20) DEFAULT NULL,
  `pwd` varchar(36) DEFAULT NULL,
  `phone` varchar(11) DEFAULT NULL,
  `age` tinyint(3) unsigned DEFAULT NULL,
  `sex` char(2) DEFAULT '男',
  `introduce` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;

CREATE TABLE `result` (
  `rid` int(11) NOT NULL AUTO_INCREMENT COMMENT '成绩编号',
  `testName` varchar(255) DEFAULT NULL COMMENT '测试名称',
  `score` double(4,2) DEFAULT NULL COMMENT '成绩',
  `studentId` int(11) DEFAULT NULL COMMENT '学生id',
  PRIMARY KEY (`rid`),
  KEY `studentId` (`studentId`),
  CONSTRAINT `result_ibfk_1` FOREIGN KEY (`studentId`) REFERENCES `student` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;

DML

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
insert into student values(0,'2024-02-25 10:10:10','赵灵儿','123',
'15612345678',16,'女','逍遥哥哥,你终于找到我了。');
insert into student values(0,'2024-02-25 10:10:10','王语嫣','123',
'15612345678',17,'女','慕容复,我和你不共戴天。');
insert into student values(0,'2024-02-25 10:10:10','龙姑娘','123',
'15612345678',22,'女','我想过过过儿过过的日子。');
insert into student values(0,'2024-02-25 10:10:10','杨过','123',
'15612345678',18,'男','一遇杨过误终身。');
insert into student values(0,'2024-02-25 10:10:10','杨逍','123',
'15612345678',27,'男','杨过跟程英的大儿子。');
insert into student (userName,age,introduce)values('黄衣女子',26,'杨过与龙姑娘的大女儿。');

insert into result values(0,'政治',96,1);
insert into result values(0,'地理',86,5);
insert into result values(0,'政治',77,3);
insert into result values(0,'英语',99,3);
insert into result values(0,'历史',22,6);
insert into result values(0,'化学',69,2);
insert into result values(0,'Java',79,5);
insert into result values(0,'Java',67,6);
insert into result values(0,'政治',97,2);
insert into result values(0,'物理',76,6);
insert into result values(0,'物理',82,2);
insert into result values(0,'化学',56,4);

DQL

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 两个表的联合查询以及分组排序与having筛选
select studentId '学号',userName '学生名称',
sum(score) '学生各科目总分',
count(score) '考试科目数量',
avg(score) '各科目平均分'
from result inner join student on result.studentId=student.id
# 重新使用学号进行分组
GROUP BY studentId,userName
HAVING avg(score)>60
order by avg(score) desc;
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-04-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
MySQL分组查询以及having筛选
红目香薰
2024/04/10
3860
MySQL分组查询以及having筛选
MySQL分组查询实例
红目香薰
2024/04/03
7670
MySQL存储过程练习
红目香薰
2024/05/14
1240
MySQL的触发器创建与使用——使用Baidu Comate生成与触发测试完整过程
为了实现在添加用户信息时不允许添加姓名为张、王、李、赵的userName,您可以创建一个BEFORE INSERT触发器。以下是一个可能的实现:
红目香薰
2024/05/16
2250
MySQL的触发器创建与使用——使用Baidu Comate生成与触发测试完整过程
MySQL学习必备SQL_DDL_DML_DQL
数据库名称可以为【schoolDB】,字符集【utf8】,排序规则【utf8_general_ci】。
红目香薰
2024/03/26
1170
MySQL学习必备SQL_DDL_DML_DQL
MySQL数据库练习——视图
需要注意的是,视图并不是实际存在的物理表,它只是根据定义的查询语句生成的结果集。在使用视图时,要注意以下几点:
红目香薰
2024/04/20
3310
MySQL数据库练习——视图
MySQL数据库子查询练习——DDL与DML语句(包括引入视频)
红目香薰
2024/04/18
1670
MySQL数据库——事务操作-begin-commit-rollback
事务是一个完整的操作,事务的各步操作是不可分的(原子的),要么都执行,要么都不执行。
红目香薰
2024/04/20
2880
MySQL数据库——事务操作-begin-commit-rollback
MySQL单表操作学习DDL_DML_DQL语句
数据库名称可以为【schoolDB】,字符集【utf8】,排序规则【utf8_general_ci】。
红目香薰
2024/03/29
1440
MySQL单表操作学习DDL_DML_DQL语句
MySQL日常语句练习——单表DDL_DML_DQL语句练习
数据库名称可以为【schoolDB】,字符集【utf8】,排序规则【utf8_general_ci】。
红目香薰
2024/03/26
1890
MySQL日常语句练习——单表DDL_DML_DQL语句练习
MySQL存储过程_触发器_游标——Baidu Comate
红目香薰
2024/05/26
1820
mysql必知必会2
语法:delete from {1} where {2} 第一对大括号替换为表名,第二对大括号替换为查询条件。 注意:删除语句一定要写删除条件,否则整张表删除。 例如:delete from commodity 这个SQL语句删除commodity表中的所有数据。 例如:delete from commodity where id = 5 这个SQL语句删除commodity表中的id=5的数据
潇洒坤
2018/09/10
7890
mysql必知必会2
SQL学习笔记四(补充-2)之MySQL多表查询
EXISTS关字键字表示存在。在使用EXISTS关键字时,内层查询语句不返回查询的记录。 而是返回一个真假值。True或False 当返回True时,外层查询语句将进行查询;当返回值为False时,外层查询语句不进行查询
Jetpropelledsnake21
2019/02/15
1.2K0
MySQL练习sql脚本(某校学生管理系统版本)
环境下载与安装教程:【https://laoshifu.blog.csdn.net/article/details/118991473】
红目香薰
2022/11/29
7270
MySQL练习sql脚本(某校学生管理系统版本)
MySQL数据库基础练习系列8、成绩录入与分析系统
很多学生或者说是初学者在学习完成数据库的基础增删改查后就自认为在数据库这里就很熟悉了,但是不接触项目根本部知道需求,我这里准备了50个项目的基本需求来让大家来熟练各类项目的列信息,让大家更好的深入项目进行实战式的练习,可以让大家在后面面试的时候有更多更丰富的资历让大家可以与面试官侃侃而谈。
红目香薰
2024/06/07
2150
MySQL更多练习题及答案
 Source Server        : localhost  Source Server Type    : MySQL  Source Server Version : 50624  Source Host          : localhost  Source Database      : sqlexam
星哥玩云
2022/08/18
4380
【MySQL】多表查询全解-【多表关系/内外自连接/子查询/多表查询案例链接】(可cv代码&案例演示)
YY的秘密代码小屋
2024/04/03
2.3K0
【MySQL】多表查询全解-【多表关系/内外自连接/子查询/多表查询案例链接】(可cv代码&案例演示)
【数据库】MySQL经典面试题(练习)
【数据库】MySQL经典面试题(练习) 一、删除除了学号字段以外,其它字段都相同的冗余记录,只保留一条!(也就是要删除凤姐和田七中一条重复数据只留一条) 要求结果数据: 原始数据: CREATE TA
Java帮帮
2018/03/15
1.7K0
【数据库】MySQL经典面试题(练习)
MySQL基础查询语句练习题
5、从student表查询所有学生的学号(id)、姓名(name)和院系(department)的信息
wangmcn
2022/07/26
9210
MySQL基础查询语句练习题
MySQL 经典30题,拿走不谢!!!
这里将开始我们的 sql 之旅,在这里希望对 sql 能力稍弱的同学,有一定的帮助。 如果大家在以下 sql 学习中,发现更具有优化性的建议,可以留言给小编或者加技术群交流,让我们一起成长。(底部有WeChat方式)
八点半的Bruce、D
2020/06/09
1.3K0
推荐阅读
相关推荐
MySQL分组查询以及having筛选
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验