第四章 oracle初级查询,事物,过程及函数
(一).当止函数:输进一名,输出一名
当止函数包括(日期函数,数值函数,字符函数,转换函数,其它函数)
1.日期函数:
add_months
months_between
last_day
next_day
2.数值函数(abs,ceil,floor,power,sqrt,mod,round,trunc,sign)
(1)abs:尽对值
(2)ceil:向上与整
(3)floor:向下与整
(4)round(n,[m]):
若m=0,则四舍五进到整数位
若m<0,则四舍五进到小数点前m位
若m>0,则四舍五进到小数点后m位
(5)trunc(n,[m])
若m=0,则将数字n的小数部分截与掉
若m<0,则将n截与到小数点前的m位
若m>0,则将n截与到小数点后的m位
(6)power(n):n次圆
(7)sqrt:开平圆根
(8)mod:与余
(9)sign:标识表记标帜数值正背(整数为1,0为0,背数为-1)
3.字符函数(lower,upper,ltrim,rtrim,substr,concat,replace,instr)
(1)lower:将字符串转换为小写
(2)upper:将字符串转换为年夜写
(3)length:返回字符串长度
(4)ltrim:往左侧的空格
(5)rtrim:往右边的空格
(6)substr:截与字符串
例如:select substr("cto",3,2) from dual;
成果为:o.
3:从甚么位置开初,2是截与的若干很多多少位
(7)replace:交换
例如:select replace("cto","t","e") from dual;
成果为:ceo
(8)instr:获得索引,从1开初
4.转换函数(to_number,to_char,to_date,nvl(expr1,expr2),nvl2(expr1,expr2,expr3))
(1)to_number(将契开数字格式的字符串转变成数字值)
select to_number("2000.22","999999D99") from dual;
成果为:2000.22
(2)to_char()
select to_char(sysdate,"yyyy-mm-dd") from dual;
成果为:2013-12-27
(3)nvl(expr1,expr2)
expr1,expr2可所以任何数据类型,可是两者数据必必要婚配
假如expr1是null,则返回expr2;假如expr1没有为null,则返回expr1;
例如:select nvl(1,2) from dual;
成果为:1
select nvl(null,2) from dual;
成果为:2
(4)nvl2(expr1,expr2,expr3)
假如expr1没有是null,则返回expr2;假如expr1是null,则返回expr3;
例如:select nvl2(1,2,3) from dual;
成果为:2
select nvl2(null,2,3) from dual;
成果为:3
(5)to_date()
例如:select to_date("13-12-27","yyyy-mm-dd") from dual;
成果为:0013-12-27
(两)多止函数:max,min,avg,sum,count ->group by having
多止函数包括:分组函数,解析函数
(1)解析函数:
分页:row_number() over(order by 条件)
排止:rank,战row_number用法一样
(三)多表查询
1.纠开把持符:
(1)union:检索扫数没有重复的止(补散)
(2)union all:扫数止(并散)
(3)intersect:检索查询共有的止(交散)
(4)minus:检索查询以外的止(差散)
2.链接查询:
(1)自毗连
例如:emp表包括empno员工号,mgr治理者号,检索员工smith的上级发导
select manager.ename from scott.emp manager,scott.emp worker
where manager.empno=worker.mgr and worker.ename="SMITH";
成果为:FORD
(2)内毗连 :inner join .... on
(3)外毗连:
左(外)链接:left[outer] join ... on
右(外)毗连:right[outer] join ...on
完齐外链接:full join ... on
(四)事务处置:事务是用于确保数据库数据的分歧性,它由一组相闭的DML语句组成.
(1)提交事务(commit)
(2)回退事务(rollback)