Oracle比较空字符串和空格bug?

时间:2015-09-25 10:59:01

标签: oracle oracle11g

这个选择在Oracle 11上工作正常

select 
*
FROM
ALL_CONSTRAINTS C
WHERE C.CONSTRAINT_TYPE='P'
AND COALESCE(C.INDEX_NAME, ' ')<>' ' /* space */

但这不会返回任何行

select 
*
FROM
ALL_CONSTRAINTS C
WHERE C.CONSTRAINT_TYPE='P'
AND COALESCE(C.INDEX_NAME, '')<>'' /* empty string */

因为你可以看到差异只在

之间

COALESCE(C.INDEX_NAME,&#39;&#39;)&lt;&gt;&#39;&#39;和COALESCE(C.INDEX_NAME,&#39;&#39;)&lt;&gt;&#39; &#39;

我不明白为什么会这样 - 一个错误? 或者我错过了什么

0 个答案:

没有答案