MySQL学习(二)---使用DQL查询数据

MySQL学习(二)—使用DQL查询数据

01 DQL语言介绍

DQL(Data Query Language 数据查询语言)可用来查询数据库数据,进行简单的单表查询或者多表的复杂查询和嵌套查询。


02 SELECT

# 查询表中所有的数据列结果,采用通配符*
# 示例1:查询student表中的所有信息
select * from student;
# 示例2:查询student表中的指定列(学号,姓名)
select StudentNo,StudentName from student;

03 AS

# AS关键字可以给数据列取一个新的别名,在联合查询中方便区别不同表的相同的列名
# 示例:查询student表中的指定列(学号,姓名),并将列名显示为学号,姓名
select StudentNo as '学号',StudentName as '姓名' from student;

04 DISTINCT

# 使用DISTINCT可以将查询返回的记录结果中的重复记录去掉,即当返回的某些列的值相同时,只返回一条记录
# 示例:查询studenNo并去除重复学号的ji
select distinct StudentNo from student;

05 WHERE

# WHERE用于检索数据表中符合条件的记录
# 搜索条件可由一个或多个逻辑表达式组成 , 结果一般为真或假
# 逻辑操作符 AND(可写为&&) OR(可写为||) NOT(可写为!)

# 示例
# 查询考试成绩在95-100之间的
SELECT Studentno,StudentResult 
FROM result
WHERE StudentResult>=95 AND StudentResult<=100;

# 查询学号为1009的同学以外的其他同学的成绩
SELECT studentno,studentresult
FROM result
WHERE NOT studentno=1009;

06 模糊查询

  • between and
#查询科目8成绩在90分到100分之间的同学的学号
select StudentNo
from result
where SubjectNo=8 and StudentResult between 90 and 100;
  • like
# 需要结合通配符使用
# 查询所欲李姓同学的学号及姓名
SELECT studentno,studentname FROM student
WHERE studentname LIKE '李%';

# 查询李姓且名字只有两个字的同学的学号及姓名
SELECT studentno,studentname FROM student
WHERE studentname LIKE '李_';

# 查询李姓且名字只有三个字的同学的学号及姓名
SELECT studentno,studentname FROM student
WHERE studentname LIKE '李_';

# 查询姓名中含有文字的同学的学号及姓名(文字出现的位置不限)
SELECT studentno,studentname FROM student
WHERE studentname LIKE '%文%';
  • in
# 查询address为北京,南京,河南洛阳的学生
SELECT studentno,studentname,address FROM student
WHERE address IN ('北京','南京','河南洛阳');

#查询科目8成绩在90分到100分之间的同学的姓名(使用嵌套连接查询)
select StudentName
from student
where StudentNo
in(select StudentNo from result where SubjectNo=8 and StudentResult between 90 and 100);
  • null
#查询出生日期没有填写的同学(注意,不能用=null判断,要使用is null判断)
SELECT studentname FROM student
WHERE BornDate IS NULL;

#查询出生日期填写了的同学
SELECT studentname FROM student
WHERE BornDate IS NOT NULL;

# 需要注意的是,空字符串''并不等于NUll

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值