首页 > 代码库 > 内置函数----整理、例题 、xmin
内置函数----整理、例题 、xmin
-----------数值函数 ---绝对值 select abs(-123) from dual; --求模 select mod (12,5) from dual; --取整 --上限值 select ceil(123.45) from dual; --下限值 select floor (123.45) from dual; --四舍五入 select round(123.55) from dual; select round(123.5267,2) from dual;--参数2表示小数点保留几位数 select round(126.5267,-1) from dual;--参数-1表示小数点向左移动1位
字符串函数、替换函数----------------------------------------------------------------------------
--截取,直接舍掉 select trunc (123.52) from dual; select trunc (126.5267,2) from dual; select cno, round ( avg(degree) ,2) from score group by cno; --计算字符串长度 select sname, length (sname) from student; select * from student where length (sname)>2; --去空格 select trim (‘ 付 s十b 亮 ‘) from dual; select ltrim (‘ 付 s十b 亮 ‘) from dual; select rtrim (‘ 付s十b亮 ‘) from dual; --替换 select replace(‘ abc def ‘, ‘ ‘ , ‘#‘ )from dual;--把空格换成# select replace (sname, ‘王‘, ‘李‘) ,sname from student where sname like ‘王%‘; --更新姓王的学生名称为姓李的 update student set sname = replace (sname, ‘王‘, ‘李‘) where sname like ‘王%‘; -- 查找字符串 select instr (‘bac‘, ‘a‘) from dual; --数据库中索引和字符串位置从1开始 --截取字符串 select substr(‘abdjhwkfjf‘, 2) from dual; --从第2位截取后面所有 select substr(‘abdjhwkfjf‘, 2,5) from dual; --从第2个截取到第五位结束 select substr(‘abdjhwkfjf‘, -8,5) from dual; --从右边向左数8位向右截取5位长度,长度不能是负数 select sname, substr(sname,1,1) || ‘同学‘from student ; --成绩为空的替换成0 select t.*, nvl (degree ,0) from score t; select t.*, nvl (degree ,100,0) from score t;-- 100是不为空的替换成100,为空的默认为0 --替换 select t.* , decode (ssex, ‘1‘ , ‘男‘ ,‘2‘,‘女‘ ,‘不知道‘) from student t; -- 返回当前用户 select user from dual ;
聚合函数------------------------------------------------------
--1.聚合函数 返回单个值 --记录条数 select count (sno)from student where sclass=95031; --查平均成绩 select sum(degree)/count (1) from score; select avg(degree) 平均值 from score; --合计总成绩 select sum(degree) from score; --最高成绩 select * from score order by degree desc; select max (degree)最大值, min (degree)最小值,avg(degree) 平均值 from score;
时间函数-------------------------------------------------------------------------
--字符串数字之间运算 select cast(‘123‘ as number ) +123 from dual; ----------------------时间函数 --查询系统时间 select sysdate from dual; insert into course values (‘8-123‘,‘设计素描‘,‘856‘,sysdate); select sysdate +1 from dual; --增加系统月份 select add_months (sysdate,2) from dual; --查询系统本月最后一天 select last_day (sysdate) from dual;
转换函数-----------------------------------------------------------------
--22、查询和学号为108的同学同年出生的所有学生的Sno、Sname和Sbirthday列。 select t.sbirthday, to_char (t.sbirthday,‘yyyy-mm-dd hh24:mi:ss‘) from student t where sno=‘108‘ select sno,sname,sbirthday from student where to_char (sbirthday,‘yyyy‘)= (select to_char (t.sbirthday,‘yyyy‘) from student t where sno=‘108‘); select * from student where sbirthday >= to_date(‘1977-1-1‘,‘yyyy-mm-dd‘);
内置函数----整理、例题 、xmin
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。