仅带有一个OR语句的where子句-带或不带括号的奇怪行为

时间:2019-03-07 13:11:57

标签: sql oracle where

我有一个这样的SQL查询-(已替换表名,但查询相同)

select * from MY_TABLE 
where  col1 = 'val1' or
col1 = 'val2'

当我在较低的环境中运行此命令时,查询工作正常,但是当我在较高的环境中运行它时(PRODUCTION env)

此查询使我-满足

的所有交易
col1 = 'val1'
col1 = 'val2'
col1 = 'val3'
col1 = 'val4'
col1 = 'val5'

我的表具有这五个值-所以最后我只添加了方括号并解决了该问题-但为什么它不能在较低的环境中反映

修复如下

select * from MY_TABLE 
where ( col1 = 'val1' or
col1 = 'val2' )

我不需要解决方案-但想知道为什么会这样。

我尝试搜索它,但到目前为止还没有可靠的答案

0 个答案:

没有答案