ORACLE之SQL——排序

**

1、给查询结果进行降序

**
按照员工的雇佣日期给员工进行降序查询
这里写图片描述
按照员工的编号进行升序查询
这里写图片描述
提示,对于升序或者降序操作查询可以通过所查询的位置号进行操作,如以下:
对员工的员工号进行降序查询可以这样写:
这里写图片描述
上面的写法在程序开发中会很有用,因为它指定的是位置,如果需要改变有可能会忘记改order by 后面的条件,给开发带来不少的麻烦。
练习:查询10号部门员工的员工编号,员工姓名和工资,并按照员工的工资进行升序操作。
这里写图片描述
查询有提成员工的姓名,编号,工资和提成,并按照提成进行升序操作。
这里写图片描述
**

2、多个字段之间的排序操作

**
在实际的需求中,通常会遇到对多个字段进行排序的操作,比如在职工表emp中,按照部门编号进行升序排序,并按照工资进行降序操作排序。
这里写图片描述
**

3、按照子串进行排序操作

**
在hr用户中,有一张表为employees表,表中有一字段phone_number,我们知道,电话号码的长度一般至少为7位,通常为了增强客户的认可度,我们需要只查询表中phone_number字段的最后四个尾号,这样该怎做呢?而函数就可以帮我们很好的解决这一问题。来看示例:
这里写图片描述
**

4、函数TRANSLATE

**
语法格式:
translate(expr,from_string,to_string)
这里写图片描述
translate函数的作用就是将字符串中的字符一一替换,如果被替换中的字符to_string在expr中找不到,将返回expr中的原字符,否则全部替换,如果from_string中有两个相同的字符,在to_string中以出现的第一个字符为标准。
如果to_string中的字符为空,则返回空值。如果to_string中对应的位置没有字符,from_string中的字符将会清除掉。
这里写图片描述
**

5、translate函数的作用体现,混合字符串排序

**
比如我们发现一个列中即有字母,又有数字,而我们的需求只是对其中的字母进行排序,TRANSLATE函数的作用就体现出来了。
示例:
先创建一个字母和数字的混合列。
这里写图片描述
按照字母进行升序排序

这里写图片描述
按照数字进行降序排列
这里写图片描述
这里使用了一个lpad函数,关于这个函数的使用,后续更新的博客中将会详细解释,在这里就不解释了。
**

6、空值排序处理

**
对于空值排序的处理,ORACLE提供了专门用于处理空值处理的两个关键词,分别是nulls first和nulls last
这里写图片描述
这里写图片描述
**

7、根据条件取不同列中的值来进行排序

**
示例:有这么一种需求,需要查看员工工资在某个范围中的工资,并优先显示。
例如:查询工资在3000到4000之间的员工的工资,并优先显示。
这里写图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值