oracle 除法 余数,oracle 学习笔记2

数字函数

round(45.926,2) 45.93 四舍五入到小数点2位

trunc(45.926,2) 45.92 截断到小数点2位、

mod(1600,300) 100 返回除法运算的余数 常用于确定值为奇数还是偶数

练习 select round(445.923,2) ,round(445.923,1) ,round(445.923,-1),round(455.923,-2) from dual

处理日期

sysdate

select sysdate from dual 2009-3-31 22:18:31

months_between 2个日期之前的月数 add_months 加月数 last_day 月的最后天

select id,months_between(sysdate,up_time)

MOT,add_months(up_time,5) Addd,

last_day(up_time) Lastt from inch_cinema_res

转换函数

隐式数据类型转换

to_char(up_time, 'yyyy/mm/dd') 2009/03/04

to_char(up_time, 'YYYY-MM-DD YEAR-MONTH-DAY MON-DY') 2009-03-04 TWO THOUSAND NINE-3月 -星期三 3月 -星期三

日期格式: YYYY YEAR MM MONTH MON DY DAY DD

to_date(str,'yy-mm-dd')

to_number

嵌套函数

F3(F2(F1(col,arg1),arg2),arg3)

常规函数

nvl(playtime,'12') playtime 为空 结果为12

nvl(playtime,'13','12') playtime 不为空 结果为13 为空 结果为12

nullif(playtime,a,b) a=b 则结果为空 否则为a 相当于case

coalesce(a,b,c,d) a为空,则b; ab为空,则c; abc都为空,则d 相当于多个case

条件表达式

CASE函数

select user_id, name,user_integral,

case user_id when 10872 then user_integral+1000

when 8574 then user_integral+2000

when 8874 then user_integral+3000

else user_integral END resasd

from inch_user_base t where user_integral >100

10872 123 1123

8574 123 2123

8874 123 3123

7451 123 123

DECODE函数 同CASE

练习 3

select sysdate as "DATE" from dual 2009-3-31 23:23:17

select user_id, name,user_integral,1.15*user_integral as new_inte, 1.15*user_integral-user_integral as jian from inch_user_base t where user_integral >1000

四 显示多表数据

2表查询 等值联结

select a.id,a.name,b.id,b.res_id,b.path from inch_cinema_res a,inch_cinema_partres b where a.id = b.res_id order by a.id desc

非等值联结

select e.last_name,e.salary,j.grade_level from employees e,job_grades j where e.salary bewteen j.lowest_sal and j.highest_sal;[@more@]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值