Oracle数据库学习之单行函数
单行函数
- lower() 大小转换为小写
- upper() 全部转换为大小
- initcap() 首字母转换为大写
sql
1 | SELECT lower('MAGE') as mage,upper('mage 私房菜') AS mage, initcap('mamh') |
- caoncat() 连接2个字符串
- subtree(‘helloworld’, 1, 5) 截取字符串
- length()
- instr() 判断某个字符在一个字符串中首次出现的位置
- lpad()
- rpad()
- trim()
- replace()
sql
1 | SELECT concat('hello ', 'world'), substr('helloworld',2,4),LENGTH('helloworld') |
sql
1 | SELECT EMPLOYEE_ID, SALARY, lpad(SALARY, 10, ' '),rpad(SALARY, 10, '-') |
sql
1 | SELECT trim('H' FROM 'HellowWorldHelo'), replace('h', 'helloworld') |
sql
1 |
|
sql
1 | SELECT round(534.125, 2),round(123.45),round(123.45,-2) |
sql
1 | SELECT trunc(534.125, 2),trunc(123.45),trunc(123.45,-2) |
sql
1 |
|
sql
1 | SELECT EMPLOYEE_ID, LAST_NAME, trunc((sysdate - hire_date)/30), months_between(sysdate, HIRE_DATE) |
sql
1 | select add_months(sysdate,2), add_months(sysdate, -3) |
sql
1 |
|
转换函数
- to_char()
- to_number()
- to_date()
date <==> varchar2 <==> number
sql
1 | SELECT to_char(1234567.89, '999,999,999.99') FROM dual; |
通用函数
- nvl()将空值转换为已知的值
- nvl2(expr1, expr2, expr3)
- nullif()
- coalesce()
sql
1 | SELECT EMPLOYEE_ID, LAST_NAME,SALARY*12*(1 + nvl(EMPLOYEES.COMMISSION_PCT, 0 )) AS salary FROM EMPLOYEES |
sql
1 | SELECT |
条件表达式
- case表达式
- decode 函数
sql
1 | SELECT |
sql
1 | SELECT |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 马哥私房菜!