多语言展示
当前在线:1555今日阅读:155今日分享:35

oracle数据库的连接运算符and、or使用方法

oracle数据库中的数据,在查询的时候,通常不是一个条件就能过滤出想要的结果,那么,当需要指定多个复杂的过滤条件时and、or连接运算符就派上用场了
工具/原料
1

oracle 11g

2

plsql

方法/步骤
2

往测试表中插入测试记录,插入记录之后,记得点击Commit按钮,将数据写入数据库。如果不Commit,当前会话是可以查到数据的,但是,其他用户是查询不到这些数据的insert into tblEmployee(Id, Empcode, Empname, Address, Salary) values(sys_guid(), 'Emp001', '员工1', '广州', 10000);insert into tblEmployee(Id, Empcode, Empname, Address, Salary) values(sys_guid(), 'Emp002', '员工2', '上海', 20000);insert into tblEmployee(Id, Empcode, Empname, Address, Salary) values(sys_guid(), 'Emp003', '员工3', '深圳', 30000);insert into tblEmployee(Id, Empcode, Empname, Address, Salary) values(sys_guid(), 'Emp004', '员工4', '北京', 40000);insert into tblEmployee(Id, Empcode, Empname, Address, Salary) values(sys_guid(), 'Emp005', '员工5', '武汉', 5000);

3

查询当前测试表中的所有数据,这个时候是不需要使用select * from tblEmployee

4

and条件:查询地址在上海,名字=员工2的记录。从运行结果可以看出,and条件的意思是,同时满足,只有当and前后的条件都满足的记录才会查询出来select * from tblEmployee where address = '上海' and empname = '员工2';

5

or条件:查询地址在北京,或者名字=员工1的记录。从运行结果可以看出,or条件的意思是或者,只要满足or前后的任意一个就查询出来select * from tblEmployee where address = '北京' or empname = '员工1';

6

and、or同时使用,比如,查询地址在上海,名字=员工2的记录,或者名字=员工1的记录。从运行结果可以看出,当and、or条件一起使用的时候,默认会将相邻and条件合并成一个条件,最后再or条件select * from tblEmployee where address = '上海' and empname = '员工2' or empname = '员工1';也就是说,上面这个sql其实最终是按照下面这样执行的select * from tblEmployee where (address = '上海' and empname = '员工2') or empname = '员工1';

7

使用括号的条件,对于上一步的条件,如果想要查询地址在上海,名字是员工1或者员工2的结果,就需要使用到括号了。从运行效果可以看出,sql语句会将括号内的条件当做一个条件来处理select * from tblEmployee where address = '上海' and (empname = '员工2' or empname = '员工1');

推荐信息