ORACLE SQL过滤和排序

ORACLE SQL过滤和排序

提目讲到的是过滤和排序,顾名思义就是将需要或者不需要的东西过滤掉,排序字面上的意思不就是按照你想要的排法来排序吗,列如:工资从高到低,成绩从低到高或者是名字的首字母的排序呀,等等。这些都是我们在用Oracle中会经常使用到的。

那么每程序员想筛选什么条件的时候是否会用到过滤这个词呢,假如公司里的数据有上万条或则是更多的数据,然而老板想让员工找出工资在5000到10000之前的员工的话,而员工又不会使用过滤条件的话,难道身为员工的要一条数据一条数据的去查,然后再统计吗,如果是百来条的话可能问题不大,要是数据太大的话员工这样一条一条的查的话那不得要花几天的时间啊,那这样的效率也太低了吧,我相信公司的老板也不会用这样的员工吧。

身为程序员过滤条件where这个单词想必大家都不会陌生,where这个过滤单词是最基础的一个了没有之一,如果这个也不会用,那么凉凉了呀。

使用where来过滤的语句怎么写呢,

  1. select * from 表名(xxx),然后可以直接在表名后面写上where条件,连贯写法:

Select* from 表名 where 条件

例如1:

Select * from employees where employee_id = 111;为了防止大家有疑惑,那么我们去执行看看效果

ORACLE SQL过滤和排序

那么有些人会问能不能写多个条件呢,这个当然是可以的,我们还是看下写法以及效果

例2:

Select * from employees where employee_id = 111 or employee_id =150;

ORACLE SQL过滤和排序

看这不是可以了吗,是吧。讲到这里,我再和大家说下or和and的使用,or和and呢也是经常会出现在Oracle中的,那么or代表的意思是“或者”,and则代表着“并且”,“或者”和“并且”的意思想必不用我做多解释了吧。

像上述图片中查询语句使用到了or,那么or这个单词呢在查询少数的条件中用还是可以的,要想用在多数的条件中那也是俩行泪呀,那我们想用多个条件要用到什么呢,我个人推荐:要是在一个范围之内的话那可以用大于大小于小的做法,那要是指定的一些的话:列如要查,100、110、150、153、102,这样的数据只要不超过30个以上的我建议用IN,那么我们可以实践一下,请看下图

  ORACLE SQL过滤和排序

那如果大家想用到“并且”的话也不是不行,但是千万不要同一个条件下,“并且”的话我个人觉得它本身就是俩个条件的。如果要用在一个条件下的话那么是可以想象的,例如:员工ID是100并且员工ID又是110的人给我查出来,那这样会出现什么样的结果呢,肯定是不存在的呀是吧,要是硬要说存在的话也行,那也就是某个人它回分身呀,孙悟空呀对吧,哈哈哈,不过现实中是不存在的哈,玩笑归玩笑别当真。

想用并且,举个例子吧,要查一个人的名字及工资,那是不是这俩者都要知道才能正确的使用呢?这个肯定是要知道的呀,要是只知道一半的话那查出来肯定是没有数据的呀,至少也要知道个大概这样也是可以查的是吧,这个不用质疑的,那我们看看“并且”的正确用法吧。

ORACLE SQL过滤和排序

  

其实无论是where关键字还是or还是and,这其实都是一种固定的语法,这个大家多用就会熟悉了,而且这个条件的过滤都是写死了的,所以大家不要怕难哦!!好吧今天讲的就到这里了

以上讲的哪里不好或是你们觉得有错的话,欢迎大家多多给点宝贵意见哈,谢谢!!