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')

posted @ 2010-08-26 16:26  张倩  阅读(467)  评论(1编辑  收藏  举报