SQL> declare 2 a number:=5; 3 b number:=-4; 4 c varchar2(60); 5 begin 6 select decode(sign(a),decode(sign(b),-1,1),'成功') into c from dual; 7 dbms_output.put_line(c); 8 end; 9 / 成功PL/SQL procedure successfully completedSQL> declare 2 a number:=5; 3 b number:=2; 4 c varchar2(60); 5 begin 6 select decode(sign(a),decode(sign(b),-1,1),'成功','失败') into c from dual; 7 dbms_output.put_line(c); 8 end; 9 / 失败PL/SQL procedure successfully completedyou see!
SELECT CASE WHEN a > 0 AND b < 0 THEN '成功' ELSE '失败' END result FROM dual
这就要看你所说的这种逻辑操作具体干什么用.
2 a number:=5;
3 b number:=-4;
4 c varchar2(60);
5 begin
6 select decode(sign(a),decode(sign(b),-1,1),'成功') into c from dual;
7 dbms_output.put_line(c);
8 end;
9 /
成功PL/SQL procedure successfully completedSQL> declare
2 a number:=5;
3 b number:=2;
4 c varchar2(60);
5 begin
6 select decode(sign(a),decode(sign(b),-1,1),'成功','失败') into c from dual;
7 dbms_output.put_line(c);
8 end;
9 /
失败PL/SQL procedure successfully completedyou see!
SELECT CASE WHEN a > 0 AND b < 0 THEN '成功' ELSE '失败' END result
FROM dual
想问你一下,哪里有关于case之类好东东用法介绍的资料。
也可以发到我邮箱[email protected]