日期:2014-05-16  浏览次数:20564 次

oracle重要的函数
oracle函数(单行)
1. nvl(x1,x2),x1和x2是表达式,如果x1是null,则返回x2,如果x1不是null,则返回x1
2. nvl2(x1,x2,x3) 如果x1是null则返回x3,如果x1不是null则返回x2
3. concat 连接两个字符串,concat(x1,x2)
4. initcap 返回一个字符串,每个单词的第一个字母大写。
5. instr  找出一个字符串中另一个字符串的开始位置 instr(‘mississippi’,’i’,3,3)   11
6. length 返回字符串的长度
7. upper 把一个字符串全部转化为大写的形式
9. trim 去除空格
10. lower把一个字符串全部转化为小写的形式
11. lpad  lpad(answer,7,’A’)    
12. rpad  
13. replace 查找和替换   replace(‘uptown’,’up’,’down’)   downtown
14. substr  返回指定字符串的一部分,由数字表示的字符位置指定 ,  在oracle中的用法:
  SUBSTR(:NEW.FLAGSTATUS,17,1)
  其中第一一次是是 ( 串,开始,长度)返回子串。
15. abs  返回绝对值
16. ceil 返回下一个更高的整数
17. floor 返回下一个较小的整数
18. round 对一个数进行舍入
19. trunc 截取一个数
20. case 数据类型转换
21. compose 转换成Unicode
22. convert 把一个字符集转换到另一个字符集
23. to_char 把一个日期型转换成字符串
24. to_date 把一个字符串转换成日期型
25.Decode 嵌入条件语句(一个if…then…else 函数)
26. greatest
27. least
28. nullif   nullif(x1,x2),如果x1等于x2,则这个函数返回null
29. sys_context  select sys_context(‘userenv’,’IP_address’)  from dual
30. sysdate 返回当前的日期和时间
31. current_date 返回当前日期
32.Last_day 返回一个月份的最后一天
33. months_between 返回两个日期之间的月份数
34. round 返回一个日期时间
35.Truncate 把日期截断到给定的详细程度。
oracle重要的组合函数
avg 返回统计平均值
count 返回非NULL行的数量
max 返回最大值
min 返回最小值
用group by 组合数据,用having 限制成组的数据,
select aa,sum(aa),sum(bbb) from tt,mm where tt.id=mm.id group by tt.id having sum(aa)>2000
一条sql既可以有where,又可以有一条having,where在组合处理之前会过滤数据,having则是在进行组合处理之后在过滤数据。
嵌套函数从最内层向最外层求值,从最左侧向最右侧求值。