sql函数笔记

一、字符控制函数

lower(‘’)全部小写

upper(‘’)全部大写

initcap(‘’)单词首字母大写

select * from employees where lower(last_name) = ‘king’;

连接contact(‘’,’’)

截取Substr(‘helloworld’,2,4)从第二个位置开始,输出四个

字符长度Length(‘helloworld’)

Instr(‘helllworld’,’w’) w首次出现的位置 未出现返回0

Lpad(last_name,’*’)10位不齐,左边补*

Rpad(last_name,’*’)) 10位不齐,右边补*

Trim(‘h’ from ‘helloword’)h从字符段中移除(首尾位h)

Replace(‘abcd’,’b’,’a’)b替代为a 替代所有的a

二、数字函数

Round(123.123,2)保留两位小数

Round(123.123)保留到整数

Round(123.123,-2)保留到百位

Trunk()截断

Round(123.123,2)截断两位小数

Round(123.123)截断到整数

Round(123.123,-2)截断到百位

Mod求余

Mod(1200,100)

三、日期的数学运算

日期加上或减上一个数字,结果仍为日期

两个日期之间相差返回日期相差天数

日期之间不能做加法

数字除24向日期中加上或减去天数

Months_between(sysdate,hire_date):两个日期相差的月数

Add_months(sysdate,12):向指定日期加上若干月数Add_months(sysdate,-12)

Next_day(sysdate,’星期一’):

Last_day(syadate)当月倒数第一天

Round(sysdate,’month’)

Round(sydate,’year’)

Trunc(sysdate,’month’)

Trunc(sysdate,’year’)

隐式类型转化

Date<->varchar2<->number

显示数据转换

Select employ_id,hire_date from employees where to_char(hire_date,’yyyy-mm-dd’) = ‘1994-06-07’;

To_char()

To_number()

通用函数

Nvl(expr1,expr2):如果expr1为空,就用恶心pr代替。如果不为空就是其本身

Nvl2(expr1,expr2,expr3):expr1不为null,返回expr2,为空返回expr3

Nullif(expr1,expr2):相等返回null,不等返回expr1

Coalesce(commission_pct,null,10)commission_pct为空返回后面,后面在为空,返回下一个,依次往后

条件表达式

Case表达式

Select last_name,employee_id,department_id

Case department_id when 10 then salary * 1.1

When 20 then salary *1.2

Else salary *1.3 end

from employees

Where department_id in (10,20,30)

Decode函数


转载于:https://my.oschina.net/u/1051716/blog/510731

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值