SQL语句 基础排序 单列排序 多列排序 升序降序 基础操作符 where语句 between 高级操作符 AND操作符 OR操作符 IN 和 NOT IN 优先级 Like操作符 模糊匹配 %

基础排序:
单列排序:
前面我们学习了数据的查询,查询出来的数据没有特定的顺序,要将查询出来的数据排序,我们可是使用ORDER BY语句:

例如我们将年龄按照升序排列:

select age from user_profile order by age

多列排序:
有时候我们要对多个列进行查询并排序,可以在order by后写多个列名,之间使用逗号隔开,排序按照先后顺序依次排序。

例如我们按照年龄age和分数gpa排序:

select device_id,age,gpa from user_profile order by age, gpa

升序降序:
默认使用order by排序,排序结果按照升序显示,要使用降序操作,需要加上关键词DESC。

例如我们要对age进行降序排序:

select age from user_profile order by age desc

这里注意一点,如果是多列排序,desc只应用到它前面的列名。

基础操作符:

where语句:
在SQL语法中,WHERE语句可以对数据进行过滤,WHERE语句常跟在From后。

例如我们要检索性别为男性的数据:

select device_id from user_profile where gender='male'

基础操作符:

WHERE语句需要和操作符搭配使用,比如等号‘=’,这里还有几个常见的操作符。

不等于号:在SQL中的写法是<>或者!=,表示不满足条件的数据。

大于号小于号:大于号>小于号<,表示大于或小于条件的数据。

范围值:范围值的限制方式是between n1 and n2,n1和n2表示要限制的范围区间,注意and前的值一定要小于and后的值,且会保留两端点的值。

空值:当字段不包含任何一个值,我们就说他是空值。

例如这个WHERE的字句,返回性别值为空的数据:

select device_id,gender,age,from user_profile Where gender is Null

当然,Not Null的用法类似,意义相反。

高级操作符:

我们来学习一下怎么使用WHERE字句建立功能更强的搜索条件:

AND操作符:我们要查找同时满足多个条件的数据就要使用and操作符。

例如我们要查询年龄小于30的男性用户:

select device_id,age,from user_profile where age < 30 and gender='male'

OR操作符:我们要查询满足多个条件的一个以上的数据,使用or进行连接。

例如我们要查询山东大学和复旦大学的学生:

select device_id,gender,age from user_profile where university='山东大学' or university='复旦大学'

IN 和 NOT IN:
这两个操作符可以来指定范围,其后使用逗号把圆括号里的合法数据分隔开。

例如要查询北京大学和复旦大学的学生数据:

select device_id,gender,age,university,gpa from user_profile where university in ('北京大学','复旦大学')

操作符的混合运用:

注意操作符的优先级,SQL处理时,先OR后AND,为防止逻辑混乱,可以使用括号。

例如要查询北京大学和gpa大于3.5的山东大学的学生数据:

select device_id.gender,age,university,gpa from user_profile where university = '北京大学' or (gpa > 3.5 and university = '山东大学')

Like操作符—模糊匹配

Like操作符需要和通配符结合使用,最常用的就是%,%表示任何字符出现任意次数。

例如查询所有学校中以北京开头的用户:

select device_id,gender,age,university,gpa from user_profile where university like '北京%' 
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

三元湖有大锦鲤

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值