mysql修改表里的成绩_Mysql对表中 数据 查询的操作 DQL

本文详细介绍了 MySQL 数据库中如何进行数据查询和操作,包括使用 AS 子句设置别名、DISTINCT 去重、WHERE 条件语句、LIKE 模糊查询、WHERE 条件的多种应用,如去重、时间计算、联合查询、ORDER BY 排序、LIMIT 分页、统计函数、GROUP BY 分组、HAVING 子句、子查询、多表查询等。通过实例展示了如何查询和处理数据,涵盖了从基本的 SELECT 语句到复杂的查询技巧。
摘要由CSDN通过智能技术生成

准备数据,倒入sql文件

运行sql文件 得到四张表

08dfeeb9847e016e77292f68feb6d164.png

d846aec946aa19c7d97be2066d3c2928.png

select * from 表名  * 代表全部

a9fa1644d9af58196b1e30d90816b4e0.png

1、AS子句作为别名

select studentname as "姓名" , sex as "性别",gradeid as "班级ID" from student;

多表查询给表起别名 简化代码

2a31c0455783d4477ae54ad50de7ba6c.png

2、distinct 去重

DISTINCT关键字

作用:

去掉SELECT查询返回的记录结果中重复的记录(所有返回列的值都相同),只返回一条

语法:

c27b72c7599e8b6782ab2189badaf23c.png

22fe41a4757e24f47ed8f07bdb61a4a9.png

多条语句去重

select distinct ID,NAME fromstudent;

以 ID和NAME 为单位

例如:如下不算重复1aa1 bb

3、where条件语句

df42413da656b00e9813fc0b4b5b9f81.png

d3f272457e7b86765ac7f7afd8bf4dda.png

eec46cc49b3d8dc198136f99496650c9.png

4、LIKE模糊查询

6ba7d6abfb10c7a4a421b41c72e2e48a.png

查询姓李的同学记录%所有字符

select* from student where StudentName like "李%";"_"代表一个字符

查询姓李X(名只有1个)的同学记录

select* from student where StudentName like "李_";

查询名字中包含文的记录

select* from student where StudentName like "%文%";

查询以 姓名 明 结尾的纪录

select* from student where StudentName like "%明"

查询所有姓 李 的学生所有成绩

select s.StudentNo as "'李'同学学号",r.stuResult as "'李'同学成绩" from student as s ,result as r

where s.StudentNo=r.StudentNo AND s.StudentName like "李%";

fb90538157aaac1212a5a7c85e7b3db8.png

查询 Java的考试成绩

select s.subjectName as java,r.stuResult as "java的成绩" from subject as s ,result as r

where s.SubjectName="java" and s.SubjectNo=r.SubjectNo;

查询考试JAVA的学生的学号和考试成绩

select r.StudentNo as "学号",r.stuResult AS "考试成绩" from result as r ,subject as s

where r.subjectNo=s.subjectNo and s.subjectName="java";

查询考试Java的学生学号,姓名,考试成绩

select r.StudentNo as "学号",st.StudentName as "姓名",r.stuResult AS "考试成绩"

from result as r ,subject as s,student as st where

r.subjectNo=s.subjectNo AND

r.StudentNo=st.StudentNo and

s.subjectName="java";

5 查询Student表中年龄为12或性别为“女”的同学记录。

CURDATE() 函数返回当前的日期。

select * from student where TIMESTAMPDIFF(YEAR,BornDate,CURDATE())=12 or Sex=0;

year(now())-year(BronDate)

TIMESTAMPDIFF函数,有参数设置,

可以精确到天(DAY)、小时(HOUR),分钟(MINUTE)和秒(SECOND),

。对于比较的两个时间,时间小的放在前面,时间大的放在后面。

5、联合查询

01c7cb92c160ae811e0d678ef80eb3cd.png

SELECT 字段列表

FROM 表1 INNER|LEFT|RIGHT JOIN 表2

ON 表1.字段= 表2.字段;

要求:从subject和grade数据表查询课程名称和所属年级名称

select s.subjectName as "课程名称" ,g.gradeName as "年级名称" from subject as s INNER JOIN grade as g

on s.gradeid=g.gradeID;

JION左边的是左表               JOIN           JOIN右边的是右表

e6e924ba55b296afb45207ad32a91cd6.png

42de5caa2372d626305b780989d02c66.png

6、order by排序

05bdb18c7d2a7fd70f748d18d3ad18aa.png

查询所有考试结果,并按成绩由高到低排列

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值