设为首页 收藏本站
查看: 1047|回复: 0

[经验分享] ORACLE 常用函数[转]

[复制链接]

尚未签到

发表于 2016-7-20 07:49:51 | 显示全部楼层 |阅读模式
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; 求本月的最后一天   
补充一下 trunc 函数对日期的处理
TRUNC(date,[fmt])
trunc(sysdate,'yyyy') --返回当年第一天.
trunc(sysdate,'mm') --返回当月第一天.
trunc(sysdate,'d') --返回当前星期的第一天.
eg:

trunc(TO_DATE('2013-11-11','YYYY-MM-DD'),'Q');--结果:2013/10/1 星期二
trunc(TO_DATE('2013-11-11','YYYY-MM-DD'),'Y');--结果:2013/1/1 星期二
trunc(TO_DATE('2013-11-11','YYYY-MM-DD'),'mm');--结果:2013/11/1 星期五


转换函数   
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; 取消月 日 前面的0   
33、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] 回收权限
------------------------------------------------------------------------------------------
转自:

http://www.cnblogs.com/vic_lu/archive/2010/08/28/1811097.html

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-246551-1-1.html 上篇帖子: Oracle删除视图中的数据 下篇帖子: Oracle 杀死假死进程SESSION
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表