decode,if,iif 函数功能类似,分别属于不同数据库
Oracle - decode
例:
select decode(id,0,'ANY',id) as ID from DUAL;
上记表示:如果id=0, 那么返回 'ANY' ,如果id不等于0,直接返回id的值。
MySql - if
例:
select if((1=2 and 2=2) or ISNULL(age) ,10,20)as abc from DUAL;
上记表示:功能类似decode,可以直接写入表达式,如果age为null, 返回10,否则返回20
SqlServer - iif
例:
select if((1=2 and 2=3) or 1=2 ,10,20)as abc from DUAL;
上记表示:同 if