为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。 【DM版本】: DM8 【操作系统】:麒麟V10 【CPU】: HUAWEI,Kunpeng 920 【问题描述】*: select if(0 = 0 , 0, 1/0) from dual; 按照惯例,应该先判断0 = 0, 此时因为是true,所以直接返回0, 实际上却是先执行 1/0,导致了除0错误 这个是否要优化一下?
再补充一下:select if(0 = 1 , 0, 1.0/2) from dual; 这里的1.0/2 计算为啥会导致无法解析的成员访问表达式[IF]
语句是先进行语法正确性效验,所以会先提示1/0错误,改为正确的计算后,会按预期返回0。
再补充一下:select if(0 = 1 , 0, 1.0/2) from dual; 这里的1.0/2 计算为啥会导致无法解析的成员访问表达式[IF]