https://www.cnblogs.com/wishyouhappy/p/3700683.html 1:基本用法 创建表,插入数据,更新数据,删除数据,删除表,修改表名,表数据复制,复制表结构, 复制表结构和数据,复制指定字段,条件查询 //条件查询 case函数 select SID,sname, (case ssex when '男' then 0 when '女' then 1 end) from student; 2:数学函数 abs(),取整函数(大):ceil(),取整函数(小):floor(), 取整函数(截取): trunc(), 四舍五入:round(), 取平方:Power(m,n) 取平方根:SQRT(), 取随机数:dbms_random(minvalue,maxvalue) select dbms_random.value from SC; 取符号:Sign() 取集合的最大值:greatest(value) 取集合的最小值:least(value) 处理Null值:nvl(空值,代替值) 处理Null值:nvl(空值,代替值) 3:rownum相关 (1)--rownum小于某个数时可以直接作为查询条件(注意oracle不支持select top) select * from student where rownum <3; (2)查询rownum大于某个数值,需要使用子查询,并且rownum需要有别名 select * from(select rownum rn ,id,name from student) where rn>2; (3)区间查询 select * from (select rownum rn, student.* from student) where rn >3 and rn<6; (5) 排序+前n条 select * from (select rownum num,t.* from ( select * from SC order by score ) t ) p where p.num >3 and p.num<6; select * from (select rownum rn, t.* from ( select d.* from DJDRIVER d order by DJDRIVER_DRIVERTIMES)t )p where p.rn<9 and p.rn>6; 4:分页查询 (1)select p.* from (select rownum num,d.* from (select * from student order by student.SID) d) p where p.num > 10 and p.num < 20 5:时间处理 (1)select to_char(sage,'yyyy-mm-dd hh24:mi:ss') birthday,to_char(sage,'yyyy') year from student select to_date('2009-07-04 05:02:01','yyyy-mm-dd hh24:mi:ss')currenttime, to_date 字符显示为日期的格式,date类型 (2)months_between Select months_between(to_date('03-31-2014','MM-DD-YYYY'),to_date('12-31-2013','MM-DD-YYYY')) "MONTHS" FROM DUAL; 6:next_day select sysdate today, next_day(sysdate,6) nextweek from dual; 7: 时间区间 //已经格式化过的时间不能再次格式化 select sid, sage from student where sage between to_date('1990-02-01 00:00:00','yyyy-mm-dd hh24:mi:ss') and to_date('2012-05-01 00:00:00','yyyy-mm-dd hh24:mi:ss'); 8:interval 间隔 to_char(sysdate - interval '7' year,'yyyy-mm-dd hh24:mi:ss') intervalyear, 当前时间的年份减去7天 9:add_months 10:extract 6:字符函数 --字符串截取 :substr('abcdefg',1,5) --查找子串 : instr('abcdefg','bc') instr ----连接 'Hello'||'World' concat --去前后空格 trim(' wish ') trim, trim(leading 'w' from 'wish') deleteprefix, --去前缀 trim(trailing 'h' from 'wish') deletetrailing, --去后缀 --ascii(转换为对应的十进制数) ascii('a') A2, --chr(十进制转对应字符) chr(65) C1, chr(97) C2, --length length('abcdefg') len, --大小写变换 initcap('wish')initcap, --替换 replace('wish1','1','youhappy') replace, --转换 对应一位(前面的位数大于等于后面的位数 translate('wish1','1','y')translate, --连接 concat('11','22') concat 7:to_number --to_number(expr) --to_number(expr,format) --to_number(expr,format,'nls-param') 8:聚合函数 //上一章节