求一个sql语句(结果集的除法)_SQL--简单查询

今天学习第二关--简单查询,本文分为5个部分:

  1. 基本的查询语句
  2. 指定查询条件和sql语句注意事项
  3. 注释
  4. 运算符
  5. 字符串模糊查询

1.基本的查询语句:select语句

1)select语句的基本形式:

select<列名1>,<列名2>……→select子句,表示将从表中查询出列的名称:列名1,列名2……

from<表名>→from子句,表名将从哪个表中查询数据

例如:

86351f449a5fd7437c0204c4bd3c53e5.png
最后返回的数据是从student里提取出姓名,性别两列的数据

2)星号(*)查询出全部列

2187bd50f63dd45ffdbbdcb6afe2b67e.png
这样就提取出student 表格里所有列的数据

3)为列设置别名(as)

9dbff9b9112a3768873064fb2565557a.png
由此可以把原表中的列名换成我们更容易理解的列名

4)删除重复值(distinct)

637149b8950c9c10a18e2ab7c13f961d.png
该语句表明将姓名列的重复值(两个叫做猴子的学生)删掉并且保留了一个

distinct 用在多列之前:当多个列都同时重复时才当做一条重复数据被删除:

17a4667a3abb747f8f2654dfb6286e08.png
由于猴子姓名是一致,但是学号不一致,因此未删除

5)sql书写规则及注意事项

书写规则:

2307e34185ed64b210a081e66295f6e2.png

注意事项:

1)关键字不区分大小写,但是插入表中的数据是区分的,比如录入A和a都是区分的

2)标点符号全部都是英文格式,这一点极其容易报错

2.指定查询条件:

我们通过where 子句来指定条件:

71685f38b3df8c8396f755585afe049e.png
where子句表示在姓名列中寻找等于‘猴子’的值

此处需要注意的是,sql书写顺序是select子句→from子句→where子句(不可更改书写顺序),而执行顺序是from子句→where子句→select子句(即从哪张表何处查询)

3.注释

注释能够帮助自己和阅读者理解sql语句,注释分为两种:单行注释和多行注释

49224ad3787c61459dc553a2559106a8.png

4.运算符

1)算数运算符

b366d7b420a087ac86f303da60751fbc.png
这里运用的是除法,表示成绩/100的值作为新增命名为百分比成绩的列

2)逻辑运算符

3f41a642980f02a3ed3918a77e22dd65.png
表明筛选出姓名不等于&amp;#39;猴子&amp;#39;的学号和姓名

需要注意的是,日期是字符串,需要加单引号才可以实现逻辑运算:

076c1a0a44a652904836d636566c2076.png
表示筛选出student表格里出生日期小于1990-01-02的学生的学号姓名和出身日期

字符串的大小比较:‘10’<'2',因为1开头的字符串小于2开头的字符串

PS:查询null值

f9c18cbc768fbea87bed248e70d2e18a.png

bba55b10980a5ed99f7cf66e18139919.png

3)逻辑运算符

通过逻辑运算符组合使用各查询条件

not的含义:表示否定

557657ca4403abb2383e5351f7593924.png

ba2a878e2f1af9c4d5929cae5e65c7f3.png

对比后,你会惊喜的发现二者运行结果一样,这就是因为not在这里否定了>=的含义,也就是等同于<的意义啦

and 的含义:表示取交集

c1b6a1af6ed6a2a1587afb6a9d04fb32.png
这里取了大于50的数据的集合与小于等于70的数据的集合二者的交集

between的含义:取区间

d4dfa041cd0670078943fe62ea939bff.png
运算结果与上图一样,都是取的一个50到70的区间;不同的是,between的运算包括端点值

or的含义:取并集(二者有一满足条件,二者都满足条件都会被查询取出)

cc2c84723371bf2e940d8a72a7d78145.png
这里表明性别为男性的并且(姓名为猴子或者马云)的学生,姓名取的是并集

in 的含义:or的简便写法

3c79c18ec83793359c15e155276b2ed9.png
与上例结果一致,都是取性别男,并且姓名是猴子或者马云的学生

总结运算符:

c8415e1c1fa31b5d83b807cff655e550.png

5.字符串模糊查询

f38ad9c281189910db0f2ed1a3ac1a84.png

f1942d1a5280951cfc8d3f4f98ebed09.png

ab253bebe331cb4a19eb41458b54cc24.png

6e7870269194c026ff1a02d52380c730.png

1abb7a482e0477468382035669540343.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值