oracle查询弹出条件选择,Oracle条件查询

本文介绍了Oracle数据库中如何使用SELECT语句结合WHERE子句进行条件查询,包括如何使用AND、OR和NOT操作符来筛选满足特定条件的数据。通过示例说明了如何查询工资在5000元以上的员工,以及如何结合多个条件进行复杂查询。条件查询能有效提高查询效率,避免不必要的资源消耗。
摘要由CSDN通过智能技术生成

Oracle条件查询

Oracle条件查询

我们在使用SELECT (column_1,column_2,...,column_n) FROM 或者 SELECT * FROM 的时候可以查询到表的一个或者多个甚至是全部列的数据。

但是呢,在一些情况下,我们并不希望获得所有数据,而是根据条件筛选选择性地留下指定条件的数据,例如,查询工资在5000元以上的员工数据。在一张表有数百万条数据的情况下,查询出所有的数据不仅仅要浪费时间,还要耗费内存。

SELECT语句可以通过WHERE条件来设定查询条件,查询结果是满足查询条件的数据。例如,要指定条件“工资在5000元或以上的员工”,写成WHERE条件就是SELECT * FROM employees WHERE salary >= 5000;。

其中,WHERE关键字后面的salary >= 5000就是条件。salary是列名,该列存储了员工的工资,因此,salary >= 5000就筛选出了指定条件的数据:

按条件查询employees:

SELECT * FROM employees WHERE salary >= 5000;

由此可见,条件查询的基本语法就是:

SELECT * FROM WHERE

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

例如,符合条件“工资在5000元或以上”,并且还符合条件“JOB_ID为SA_MAN”,把这两个条件写出来:

条件1:根据salary列的数据判断:salary >= 5000;

条件2:根据JOB_ID列的数据判断:JOB_ID = 'SA_MAN',注意JOB_ID列存储的是字符串,需要用单引号括起来。

就可以写出WHERE条件:salary >= 5000 AND JOB_ID = 'SA_MAN':

按AND条件查询employees:

SELECT * FROM employees

WHERE salary >= 5000 AND JOB_ID = 'SA_MAN';

第二种条件是 OR ,表示满足条件1或者满足条件2。例如,把上述AND查询的两个条件改为OR,查询结果就是“工资在5000元或以上”或者“男生”,满足任意之一的条件即选出该数据:

按OR条件查询employees:

SELECT * FROM employees

WHERE salary >= 5000 OR JOB_ID = 'SA_MAN';

很显然OR条件要比AND条件宽松,返回的符合条件的数据也更多。

第三种条件是NOT ,表示“不符合该条件”的数据。例如,写一个“名字不是King”这个条件,可以先写出“名字是King”:last_name = ‘King’,再加上NOT:last_name = ‘King’:

按NOT条件查询employees:

SELECT * FROM employees WHERE NOT last_name = ‘King’;

上述NOT条件NOT last_name = ‘King’其实等价于last_name <> ‘King’,因此,NOT查询不是很常用。

Oracle条件查询相关教程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值