www.bsff.net > 请问ORACLE 的SQL 能不能做类似于IF......ELSE.......

请问ORACLE 的SQL 能不能做类似于IF......ELSE.......

select case when job = 'CLERK' then '雇员' else '其他' end from emp;

首先SQL语句中不能含有if....else...判断语句! if else语句只有在存储过程中使用,在SQL是不支持的,不过我们有可以替代的方法,使用case when语句解决,各种数据库都支持。 语法:case when col1>1 then col2 when col1

oracle 中if ..else 可以再pl/sql 中使用, 如果是要在SQL语句中达到这种效果可以用case when ... then ...else ..end; mysql数据库中CASE WHEN语句。 case when语句,用于计算条件列表并返回多个可能结果表达式之一。 CASE 具有两种格式: 简单...

select A,case when A=0 then B when A=1 then C end from table 或者 select A,decode(A,0,B,1,C) from table

if a=b then 语句 else then 语句 end if;

select age,name,sex from student where sex = (case when age=15 then '男' end)

没有区别 if ... else ...; 为一组判断 只有 是或否 if...elsif...else : 可以有多种情况

你是不是描述的有错误?怎么两次都是username不为空? 估计可以有好几个: 1、可以用union all select * from table where 1=1 and (username is not null and instr(username , '李四') > 0) union allselect * from table where username is n...

sql server 中不是这样的。。。 是 if() begin [代码] end else begin [代码] end

不能。rollback是返回刚刚做的程序 而commit则是执行并交到数据库,再用rollback也是运行不能返回的 你这里用exists和用in 意思是差不多的,不过还是用exists比较好,因为他提高了访问的速度

网站地图

All rights reserved Powered by www.bsff.net

copyright ©right 2010-2021。
www.bsff.net内容来自网络,如有侵犯请联系客服。zhit325@qq.com