mysql 查询 投影,查询数据(一)

基本查询

笔记来源:https://www.liaoxuefeng.com/wiki/1177760294764384/1218728391867808

SELECT * FROM

使用SELECT * FROM students时,SELECT是关键字,表示将要执行一个查询,*表示“所有列”,FROM表示将要从哪个表查询,本例中是students表。

6ced78908ee3

select * from

条件查询

很多时候,我们并不希望获得所有记录,而是根据条件选择性地获取指定条件的记录,例如,查询分数在80分以上的学生记录。在一张表有数百万记录的情况下,获取所有记录不仅费时,还费内存和网络带宽。

SELECT语句可以通过WHERE条件来设定查询条件,查询结果是满足查询条件的记录。

条件查询的语法就是:

SELECT * FROMWHERE

6ced78908ee3

where 条件查询

条件表达式可以用 AND 表达满足条件1并且满足条件2。

6ced78908ee3

AND的使用

第二种条件是 OR ,表示满足条件1或者满足条件2。

6ced78908ee3

OR的使用

第三种条件是NOT ,表示“不符合该条件”的记录。NOT条件NOT class_id = 2其实等价于class_id <> 2,因此,NOT查询不是很常用。

6ced78908ee3

NOT的使用

要组合三个或者更多的条件,就需要用小括号()表示如何进行条件运算。如果不加括号,条件运算按照NOT、AND、OR的优先级进行,即NOT优先级最高,其次是AND,最后是OR。加上括号可以改变优先级。

6ced78908ee3

多个条件查询

通过WHERE条件查询,可以筛选出符合指定条件的记录,而不是整个表的所有记录。

投影查询

使用SELECT * FROM WHERE 可以选出表中的若干条记录。我们注意到返回的二维表结构和原表是相同的,即结果集的所有列与原表的所有列都一一对应。

如果我们只希望返回某些列的数据,而不是所有列的数据,我们可以用SELECT 列1, 列2, 列3 FROM ...,让结果集仅包含指定列。这种操作称为投影查询。结果集的列的顺序和原表可以不一样。

6ced78908ee3

投影查询

投影查询同样可以接WHERE条件,实现复杂的查询。

6ced78908ee3

投影查询+where

排序

使用SELECT查询时,查询结果集通常是按照id排序的,也就是根据主键排序。这也是大部分数据库的做法。如果要根据其他条件排序可以加上ORDER BY子句。例如按照成绩从低到高进行排序:

6ced78908ee3

order by 简单使用

如果要反过来,按照成绩从高到底排序,我们可以加上DESC表示“倒序”:

6ced78908ee3

desc 倒序

如果score列有相同的数据,要进一步排序,可以继续添加列名。例如,使用ORDER BY score DESC, gender表示先按score列倒序,如果有相同分数的,再按gender列排序:

6ced78908ee3

如果有WHERE子句,那么ORDER BY子句要放到WHERE子句后面。

6ced78908ee3

where语句之后加排序

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值