oracle语句查询 or和and
AND LastName='Carter'
这个括号加和不加有什么区别,最后得出的数值是不同的。 展开
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数据库
thomas carter
william carter
FirstName='Thomas' OR FirstName='William' AND LastName='Carter' 可以得到 william carter 或者 firstname 为ithomas lastname 不一定是 carter的人 比如:
thomas carter
william carter
thomas king
加了你可以把括号里面看做是一个条件,and是第二个条件
如果不加 就是三个条件了!~~~
(FirstName='Thomas' OR FirstName='William') and LastName='Carter' 只会搜出姓为托马斯获威廉姆且名为卡特的人
若不加括号,条件就被扩大化了
不加等于
SELECT * FROM Persons WHERE FirstName='Thomas' OR (FirstName='William'
AND LastName='Carter')