日期:2014-05-16  浏览次数:20906 次

select 2>1 from dual 报错
我想比较两个数 select 2>1 from dual 
如果2>1希望返回true,否则返回false。但是oracle报语法错误:未找到from关键字
------最佳解决方案--------------------
select decode(sign(2-1),1,'true','false') as str1 ,decode(sign(2-3),1,'true','false') as str2 from dual
------其他解决方案--------------------
select count(*) from dual where 2>1
可以这么写,条件成立返回1,否则返回0。
------其他解决方案--------------------
不能直接返回true or false的,报错是正常的
------其他解决方案--------------------
标识符不能以数字开头 select 2>1 from dual
2>1是标识符,当然是报错 
你的需求1楼可以满足了
------其他解决方案--------------------
这个.. 基础语法