SELECT NULL - SYSDATE FROM dual;--报错: ORA-00932: inconsistent datatypes: expected CHAR got DATE SELECT SYSDATE - NULL FROM dual;
--正常
在处理ORA-00932: inconsistent datatypes: expected CHAR got DATE
这个错误的时候发现这个问题,开始以为是2个null相减会出错,现在看来其中还有原因。
--正常
在处理ORA-00932: inconsistent datatypes: expected CHAR got DATE
这个错误的时候发现这个问题,开始以为是2个null相减会出错,现在看来其中还有原因。
Oracle认为NULL后面需要一个Char类型的,所以报错
SELECT NULL FROM dual;
原来是char类型
SELECT SYSDATE - NULL FROM dual;
为什么要进行这样的操作呢,没有意义啊。
也就是null 在前时,null自动专为 char型,然后它认为,运算要在同类型间进行,即需要‘-’后边为一个char型参数。
難道和DB版本有關係???