重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
OR是SQL的关键字,所以不管是SQL SERVER,还是oracle,都是用OR来表示或的
成都创新互联成立于2013年,先为德钦等服务建站,德钦等地企业,进行企业商务咨询服务。为德钦企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。
不是你写错了,而是你后面的那个or xx is null应该是你table里面有超多这样的纪录,所以就出现了很多条,可以通过括号来改变and or的次序
譬如
select * from [表名] where name = 'xx' and (password is null or xx is null )
and就是与的意思,所有条件都必须成立,
or就是或的意思,只要其中一个条件成立就行。
and优先级大于or。
加括号则优先执行or,后执行and;不加括号,会先执行and,再执行or,所以查询结果不同。举例:
数据库存在数据:
Thomas Carter
William Carter
Thomas King
执行:SELECT * FROM Persons WHERE (FirstName='Thomas' OR FirstName='William')
AND LastName='Carter'
结果为:
Thomas Carter
William Carter
执行:SELECT * FROM Persons WHERE FirstName='Thomas' OR FirstName='William'
AND LastName='Carter'
结果为:
Thomas Carter
William Carter
Thomas King
扩展资料:
ORACLE数据库特点:
1、完整的数据管理功能:
(1)数据的大量性
(2)数据的保存的持久性
(3)数据的共享性
(4)数据的可靠性
2、完备关系的产品:
(1)信息准则---关系型DBMS的所有信息都应在逻辑上用一种方法,即表中的值显式地表示;
(2)保证访问的准则
(3)视图更新准则---只要形成视图的表中的数据变化了,相应的视图中的数据同时变化
(4)数据物理性和逻辑性独立准则
3、分布式处理功能:ORACLE数据库自第5版起就提供了分布式处理能力,到第7版就有比较完善的分布式数据库功能了,一个ORACLE分布式数据库由oraclerdbms、sql*Net、SQL*CONNECT和其他非ORACLE的关系型产品构成。
4、用ORACLE能轻松的实现数据仓库的操作。
参考资料:百度百科-Oracle数据库
要优化or查询,只要你知道一点:
sql or查询是左截断的,也就是指要or符合条件,就不再走后面的or checking了
明白了这个,唯一的优化方案就是
把越能命中的or语句放到最前面,增加前面减少后面的or 逻辑判断