02.oracle函数 1数值型函数 1.01.返回绝对值.abs() 1.02.返回正负值.sign() 1.03.返回较大的最小整数.ceil() 1.04.返回较小的最大整数.floor() 1.05.返回x的y次幂.power(x,y) 1.06.返回常量e的y次幂.exp(y) 1.07.返回以x为底的y的对数.log(x,y) 1.08.返回以常量e为底的y的对数.ln(y) 1.09.返回x除以y的余数.mod(x,y) 1.10.返回四舍五入后的值.round() 1.11.返回截取后的值.trunc() 1.12.返回x的平方根.sqrt(x) 1.30.三角函数 2字符型函数 2.01.返回字符的ASCII码.ASCII() 2.02.返回ASCII码为x的字符.CHR(x) 2.03.连接两个字符串.CONCAT() 2.04.把每个单词首个字母变为大写.INITCAP() 2.05.将整个字符串转换为小写.LOWER() 2.06.将整个字符串转换为大写.UPPER() 2.07.把每个单词首个字母变为大写.NLS_INITCAP() 2.08.把整个字符串转换为小写.NLS_LOWER() 2.09.将整个字符串转换为大写.NLS_UPPER() 2.10.字符串中搜索字符位置(全角算1字符).INSTR() 2.11.字符串中搜索字符位置(全角算2字符).INSTRB() 2.12.返回字符串的长度(全角算1字符).LENGTH() 2.12.返回字符串的长度(全角算2字符).LENGTHB() 2.13.返回字符串的长度(其它).LENGTHC().LENGTH2().LENGTH4() 2.14.在左边添加字符.LPAD() 2.15.在右边添加字符.RPAD() 2.16.删除左边字符串.LTRIM() 2.17.删除右边字符串.RTRIM() 2.18.替换子字符串.REPLACE() 2.19.字符串语音表示形式.SOUNDEX() 2.20.截取子字符串(全角算1字符).SUBSTR() 2.21.截取子字符串(全角算2字符).SUBSTRB() 2.22.替换子字符.TRANSLATE() 2.23.删除左边和右边字符串.TRIM() 3日期函数 3.01.返回系统当前日期.sysdate 3.02.返回指定月数后的日期.add_months() 3.03.返回本月最后一天的日期.last_day() 3.04.返回2个日期间隔月数.months_between() 3.05.返回时区的对应时间.NEW_TIME() 3.06.四舍五入后的期间第一天.round() 3.07.返回日期所在期间的第一天.trunc() 3.08.返回下周某一天的日期.NEXT_DAY() 3.09.提取时间日期中数据.extract() 3.10.返回会话中的日期和时间.localtimestamp 3.11.返回当前会话时区中的当前日期和时间.current_timestamp 3.12.返回当前会话时区中的当前日期.current_date 3.13.返回数据库时区设置.dbtimezone 3.14.返回当前会话时区.SESSIONTIMEZONE 3.29.变动日期时间数值.INTERVAL 4转换函数 4.01.字符串转换为rowid值.chartorowid() 4.02.rowid值转换字符串.ROWIDTOCHAR() 4.03.字符串语言字符集转换.CONVERT() 4.04.16进制转换为二进制.HEXTORAW() 4.05.二进制转换为16进制.RAWTOHEX() 4.06.数字或日期转换为字符串.TO_CHAR() 4.07.字符串转换为日期型.TO_DATE() 4.08.字符串转换为数字型.TO_NUMBER() 4.09.半角转化为全角.TO_MULTI_BYTE() 4.10.全角转化为半角.to_single_byte() 4.11.字符集名称转为ID.nls_charset_id() 4.12.字符集ID转为名称.nls_charset_name() 5聚组函数 5.01.统计平均值.AVG() 5.02.统计合计值.SUM() 5.03.统计标准误差.STDDEV() 5.04.统计方差.VARIANCE() 5.05.统计查询所得的行数.count() 5.06.统计最大值.MAX() 5.07.统计最小值.MIN() 6分析函数 6.00.oracle分析函数 6.01.连续求和分析函数.sum(...) over(...) 6.02.排序值分析函数.RANK()和dense_rank() 6.03.排序后顺序号分析函数.ROW_NUMBER() 6.04.取上下行数据分析函数.lag()和lead() 7其它函数 7.01.返回数据类型、字节长度和在内部的存储位置.DUMP() 7.02.返回表达式列表中最大值.greatest() 7.03.返回表达式列表中最小值.least() 7.04.为空值赋值.nvl().nvl2() 7.05.返回当前会话对应的数据库用户名.user 7.06.返回当前会话所对应的用户id号.uid 7.07.返回当前会话上下文属性.userenv() 7.08.条件取值.decode() 7.09.相等返回空.NULLIF() 7.10.返回列表第一个不为空的表达式.COALESCE() 7.11.返回当前行号.rownum 7.12.指定一个外部二进制文件.BFILENAME() 7.13.返回X的大小(字节)数.VSIZE(X) 7.14.条件取值.case when then end 7.15.产生32位的随机数.sys_guid() 7.16.返回系统数据.SYS_CONTEXT() 7.17.生成随机数值或者字符串dbms_random 7.18.取得Internet中的主机名和IP地址
学习时整理的 Oracle 1、set linesize 100; 设置长度 2、set pagesize 30; 设置每页显示数目 3、em a.sql 打开记事本 4、@ a 执行文件a中的代码,可指定文件的路径 @d:a.txt 5、conn 用户名/密码 根据用户名和密码连接数据库 如果连接超级管理员(sys) 则应加上as sysdba; 6、show user; 显示当前连接的用户 7、select * from tab; 得到当前用户下的所有表 8、desc temp; 查看表结构 9、/ 继续执行上一个查询语句 clear scr; 清屏字符函数10、select upper('coolszy') from dual; 将小写字母转换成大写,dual 为一虚表11、select lower('KUKA') from dual; 将大写字母转换成小写12、select initcap('kuka') from dual; 将首字母大写 13、select concat('Hello',' world') from dual; 连接字符串,但没有||好用select concat('Hello','world') from dual;14、select substr('hello',1,3) from dual; 截取字符串15、select length('hello') from dual; 求字符串长度16、select replace('hello','l','x') from dual; 替换字符串 17、select substr('hello',-3,3) from dual; 截取后三位数值函数18、select round(789.536) from dual; 四舍五入,舍去小数19、select round(789.536,2) from dual; 保留两位小数20、select round(789.536,-1) from dual; 对整数进行四舍五入21、select trunc(789.536) from dual; 舍去小数,但不进位22、select trunc(789.536,2) from dual;23、select trunc(789.536,-2) from dual;24、select mod(10,3) from dual; 返回10%3的结果日期函数25、select sysdate from dual; 返回当前日期26、select months_between(sysdate,'16-6月 -08') from dual; 返回之间的月数27、select add_months(sysdate,4) from dual; 在日期上加上月数28、select next_day(sysdate,'星期一') from dual; 求下一个星期一29、select last_day(sysdate) from dual; 求本月的最后一天转换函数30、select to_char(sysdate,'yyyy') year,to_char(sysdate,'mm'),to_char(sysdate,'dd') from dual;31、select to_char(sysdate,'yyyy-mm-dd') from dual;32、select to_char(sysdate,'fmyyyy-mm-dd') from dual; 取消月 日 前面的033、select to_char('20394','99,999') from dual; 分割钱 9表示格式34、select to_char('2034','L99,999') from dual; 加上钱币符号35、select to_number('123')*to_number('2') from dual;36、select to_date('1988-07-04','yyyy-mm-dd') from dual; 通用函数37、select nvl(null,0) from dual; 如果为null,则用0代替38、select decode(1,1,'内容是1',2,'内容是2',3,'内容是3') from dual; 类似于 switch...case...事务处理39、commit; 提交事务40、rollback; 回滚事务41、select rownum from table; 在没一列前面显示行号42、drop table 表名 cascade constraint on delete casecade 当父表中的内容被删除后,子表中的内容也被删除43、desc表名 显示表的结构44、create user [username] identified by [password] 创建新的用户45、grant 权限1、权限2...to 用户 给创建用户权限 ex:grant create session to [username] 此时只能连接到数据库 grant connect,resource to [username] 此时权限能满足要求46、alter user [username] identified by [password] 修改用户密码47、alter user [username] password expired 下次登录时提示修改密码48、alter user [username] account lock 锁住用户49、alter user [username] account unlock 解锁锁用户50、grant select,delete on scott.emp to [username] 把scott下emp表的两个权限给用户51、revoke select ,delete on scott.emo from [username] 回收权限