![f3955d19d289bf07667a3f66ca72ff8c.png](https://i-blog.csdnimg.cn/blog_migrate/37673c39bc9c176778a6a3a46fe461b1.jpeg)
今天学习简单查询 一共五个知识点
![4169b09542a2014ad35c5d5a804ae114.png](https://i-blog.csdnimg.cn/blog_migrate/4e5236de9a92672280e187524b2782b8.jpeg)
一,基本查询:
select 列名 from table name
意思是从要查询的表中,选择选择想查询的列。星号(*)表示全部列
select distinct 列名 fromtable name 其中distinct意思是筛选不重复,例如:学号列 有两个学号为001,若使用select distinct 就不会重复出现两个001
tips:列明不可以用单引号,因为不属于字符串
练习:查询学生表里的所有列
右键点击查询—>新建查询—>输入sql语言—>点击运行—>结果出现在下方
![03cc2644410389e59914adcd504016ad.png](https://i-blog.csdnimg.cn/blog_migrate/341d757b1b62e19d5a296c5ca0336a07.png)
二,指定条件查询(where)
如要查询姓名为猴子的学生的姓名和学号
select 姓名,学号 from student
where 姓名='猴子';
查询结果:
![3b3823a012632a0a7673f8b09daac16c.png](https://i-blog.csdnimg.cn/blog_migrate/e7b58c9d2c3cd7f64bc2e1b1b2531431.png)
运行顺序的理解
select 姓名,学号 from student where 姓名='猴子';
- 选定查询的表 student ——>from student
- 要查询的数据列——>select 姓名,学号
- 要查询的数据条件——>where 姓名='猴子'
三,注释以及注意事项
如图
![445ab5e8db77a48cf6f70353df990263.png](https://i-blog.csdnimg.cn/blog_migrate/9e58b9bf2289432d016e1dc5182f9608.jpeg)
tips:注释以灰色呈现 习惯给sql语句写注释 方便他人 方便自己
语句中意事项:标点符号 以英文标点符号为准
四,运算符号(算数运算符,比较运算符,逻辑运算符)
A)算数运算符:
+ ——> 加法
- ——>减法
*——>乘法
/——>除法
注意:5+null = null
例:在成绩表中计算出百分比成绩
select 学号,成绩,成绩/100 as 百分比 from score;
![f1c3dc03a8c50246d312d416c7022f56.png](https://i-blog.csdnimg.cn/blog_migrate/3e4de9beda3a3c53600cfb1425096bad.jpeg)
B) 比较运算符:
= ——> 相等
<>——> 不等于
>——> 大于
>=——> 大于等于
< ——> 小于
<=——> 小于等于
例如:查找成绩刚刚号60分的学生学号
select 学号,成绩 from score
where 成绩 <= 60;
![a171081a4857d25beb7e569869b9f97d.png](https://i-blog.csdnimg.cn/blog_migrate/758baef65c3516bf9da3ec5993d83d4c.png)
比较运算符可与所有类型的运算符进行比较
如日期:查找比1990-01-01出生早的学生姓名
select 姓名,出生日期 from student
where 出生日期 < '1990-01-01';
![b655fa001d077f64f9b416efb602b626.png](https://i-blog.csdnimg.cn/blog_migrate/2f5bd30c41346b907d8db43f971abd6e.png)
'10' < '2' 这是字符串的比较 这里的10 是1 开头的 所以比2小
如何查询null值:
- 查询教师名字为空的数据
select 教师号,教师姓名 from teacher
where 教师姓名 is null;
2. 查询教师名字不为空的数据
select 教师号,教师姓名 from teacher
where 教师姓名 is not null;
C)字符串类型比较
not ——>否定某一条件
and——>并且
between——>范围查询
or——>或者
in ——>or的简单写法
运用NOT, 查询成绩小于60份的学生信息的两个写法:
select 学号,成绩 from score
where not 成绩 >= 60
-- 成绩不大于等于60
select 学号,成绩 from score
where 成绩 < 60
-- 成绩小于60
and 并且的意思
![32d5887fb3958327fcbfbe5b52eab0df.png](https://i-blog.csdnimg.cn/blog_migrate/a84044e1b08957818f052814e86a561c.png)
select 学号,成绩 from score
where 成绩 >60 and 成绩 < 90;
例子:查询性别是男并且姓名是猴子或者马云
select 姓名,性别 from student
where 性别 = '男' and (姓名 = '猴子' or 姓名 = '马云');
这里要注意,要先运行括号内的,查找的信息如下图红色部分
![67680888c742c7bc49a626a080c5b1f0.png](https://i-blog.csdnimg.cn/blog_migrate/53982564539ca314205c9ebc52b59f00.png)
between 范围查询
这里注意的是 between 两个数的区间 是包括两个数的 相当于大于等于 和小于等于
例如 60 =<成绩<=90
select 学号,成绩 from score
where 成绩 between 60 and 90;
-- 与下面的语句结果一样
select 学号,成绩 from score
where 成绩 >= 60 and 成绩 <= 90;
or 或者
成绩 < 60 或者 成绩 > 90
select 学号,成绩 from score
where 成绩 < 60 or 成绩 > 90;
![ee0a27ad73db3b347d638e6854383c57.png](https://i-blog.csdnimg.cn/blog_migrate/d08ee6fa8e0e8a494d87af19f382ce20.png)
in 是 or的简便写法
select 姓名,性别 from student
where 姓名 = '猴子' or 姓名 = '马云';
-- 与下面的语句结果一样
select 姓名,性别 from student
where 姓名 in ('猴子' or 马云');
与in相对的是 not in
把以上语句换成not in: select 姓名,性别 from student where 姓名 in ('猴子' or 马云');
意思就是选出名字不是猴子或者马云的学生
五,字符串模糊查询 Like: 查找相关内容
%表示任意字符串
如 '猴%' 表示以后开头的任意字符串 '%猴' 表示以后结尾的任意字符串 , '%猴%' 表示中间有猴字的字符串
具体例子:查询学生姓名以猴开头的字符串
select * from student
where 姓名 like '猴%' ;
![7c159b9f3319bc68e1422e684620114d.png](https://i-blog.csdnimg.cn/blog_migrate/60e47f9409b1d3ae66b0b793e4afe4e1.png)
-- 以此类推查询最后一个字是猴的学生信息
select * from student
where 姓名 like '%猴' ;
![9af55ecfd2a5e691033bcebbbad162bd.png](https://i-blog.csdnimg.cn/blog_migrate/eac480a5a706c41b7913d283c00a2517.png)
因为没有 所以显示的是null
查询名字带猴子的学生信息
select * from student
where 姓名 like '%猴%' ;
查询结果如下
![041185d2aa92e4f3790c918dfab0b04e.png](https://i-blog.csdnimg.cn/blog_migrate/acc65068ad8999f1657380b0c8745832.png)
_ 下划线:一个下划线表示任意一个字符
例如:查询姓王的同学的信息
select * from student
where 姓名 like '王__' ;
-- 这里注意王字后面跟的是两个下划线
查询结果如下
![311b8ed23983ca0f26ee219640900753.png](https://i-blog.csdnimg.cn/blog_migrate/a0107f788ca364c6ae9f5e0151e84d28.png)