Oracle 最最初级的菜鸟 总结工作中的点滴
1、多个表Union时,遇到nvarchar2类型时报错 “字符集不匹配”
答:使用nvarchar的地方,加上 to_char( nvarchar 的变量或字段 )
2、多个表Union时,order by 语句出错,删了order by 就好了
答:oracle仅支持最后一个select语句中使用order by ,如果只有一个order by ,将其放在最后一句;如果是多个order by ,再想想其他写法吧
3、Nvl() Nvl2()的用法
NVL (expr1, expr2)->If expr1 is null ,return the value of expr2;If not ,return expr1's own value;
Notice:the type of expr1 and expr2 are same!
NVL2 (expr1, expr2, expr3)-> If expr1 is not null ,return the value of expr2;If null ,return expr3's own value;
NULLIF (expr1, expr2) ->相等返回NULL,不等返回expr1
4、if else 语句
SqlServer:
if () begin......end else begin .....end
Oracle :
if ... then .... end if ; 或者 if ..... then.... else ....end if ; 或者 if.... then.....elsif... then.... end if ; if...elsif...elsif....end if;
5、输出消息
sqlserser:print('') oracle:dbms_output.putline('')
6、字符串拼接
select '资金计划-' || to_char(SEQ_EMP.NEXTVAL,'0000000000')