`
ujs_lifazhu
  • 浏览: 34685 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

oracle常用命令

阅读更多

1条件运算符号

(1) 比较运算符号

=
!= <> ^=
any some 
all

2单行函数

instr(hphm1,'5') 第一次出现字符5的位置,找不到返回0
length
substr
replace

3数值函数

round  四舍五入 
select  round(xh) from lifztest3 where xh ='12.45'
12
select  round(xh,1) from lifztest3 where xh ='12.45'
12.5
select  round(xh,2) from lifztest3 where xh ='12.45'
12.45



trunc 根据给定整数截取小数位

select  trunc(xh,6) from lifztest3 where xh ='12.4222215'

12.422221


sign 判断正负零 1、-1 ,0

select  sign(xh) from lifztest3 where xh ='12.4222215'

1

vsize 字段值所占的字符空间大小

5转换函数


to_char

select  to_char(rq,'YYYY-MM-DD HH24:Mi:SS') from lifztest3  where xh = '32012402001578' and rownum <2


2015-10-21 16:10:01


to_date

select  to_date(rqstr,'YYYY-MM-DD HH24:Mi:SS') from lifztest3  where xh = '32012402001578' and rownum <2

to_number

6 组函数

avg 平均值 忽略null

count

max 忽略null

min 忽略null

stddev标准差 忽略null

sum 忽略null

variance方差 忽略null



7 

select xh,syxz,count(*) from lifztest3 where xh >'12' group by xh,syxz having xh>'441' order by count(*)


视图

create or replace view view_lifztest3 as select * from lifztest3 具insert delete update权限


在一下条件建立的视图则无上述权限

集合运算 union union all intersect minus


distinct

组函数 avg count min max stddev variance


select中包含表达式 ???

create or replace view view_lifztest3 as select * from lifztest3 where xh = 'a' 能插入到lifztest3表

子查询

链接查询(有例外)

with read only 


索引


create index index_lifztest3 on lifztest3(xh)



序列

create sequence seq_lifztest3 increment by 1 start with 600930000000 with nocache


select seq_lifztest3.currval from dual


select seq_lifztest3.nextval from dual

同义词

create synonym codetest for lfz.lifztest3 


创建用户


create user lifzuser identified by lifpassword


创建角色



create role lfzdbauser identified by lifpassword



授权

grant dba to lifzuser

grant creat table session to lifzuser 


grant insert ,update ,delete ,select on lifz.lifztest3 for lifzuser

剥夺授权

revoke



revoke insert ,update ,delete ,select on lifz.lifztest3 from lifzuser


数字字典

1静态字典
select table_name from user_tables; 查找表

select index_name ,table_name from user_indexes 查找视图


select sequence_name, min_value,max_value increment_by from user_sequences 查找序列


select synonym_name,table_name from user_synonyms 查找同义词


select username ,granted_role from user_role_privs  查找用户角色

查找重复记录
select * from lifztest3 a where (a.hphm,a.hpzl,a.fdjh) in  (select hphm,hpzl,fdjh from lifztest3 

group by hphm,hpzl,fdjh  having count(*) > 1) and rowid not in (select min(rowid) from 

lifztest3  group by hphm,hpzl,fdjh having count(*)>1)


in 和exists 区别
有两个简单例子,以说明 “exists”和“in”的效率问题
1) select * from T1 where exists(select 1 from T2 where T1.a=T2.a) ;
    T1数据量小而T2数据量非常大时,T1<<T2 时,1) 的查询效率高。
2) select * from T1 where T1.a in (select T2.a from T2) ;
     T1数据量非常大而T2数据量小时,T1>>T2 时,2) 的查询效率高。
exists 用法:
请注意 1)句中的有颜色字体的部分 ,理解其含义;
其中 “select 1 from T2 where T1.a=T2.a” 相当于一个关联表查询,相当于
“select 1 from T1,T2     where T1.a=T2.a”
但是,如果你当当执行 1) 句括号里的语句,是会报语法错误的,这也是使用exists需要注意的地方。
“exists(xxx)”就表示括号里的语句能不能查出记录,它要查的记录是否存在。
因此“select 1”这里的 “1”其实是无关紧要的,换成“*”也没问题,它只在乎括号里的数据能不能查找出来,是否存在这样的记录,如果存在,这 1) 句的where 条件成立。

通过使用EXISTS,Oracle会首先检查主查询,然后运行子查询直到它找到第一个匹配项,这就节省了时间。Oracle在执行IN子查询时,首先执行子查询,并将获得的结果列表存放在一个加了索引的临时表中。在执行子查询之前,系统先将主查询挂起,待子查询执行完毕,存放在临时表中以后再执行主查询。这也就是使用EXISTS比使用IN通常查询速度快的原因

规律就是:用小表数据到大表里面查询
from:http://blog.sina.com.cn/s/blog_601d1ce30100cyrb.html

判断 中文

select * from A where asciistr(a) like '%\%' and instr(a, '\') <= 0; 

http://blog.csdn.net/happyqwz/article/details/7778135







分享到:
评论

相关推荐

    oracle 常用命令大全

    oracle 常用命令大全 oracle dba 常用命令 1 运行 SQLPLUS 工具 sqlplus 2 以 OS 的默认身份连接 / as sysdba 3 显示当前用户名 show user 4 直接进入 SQLPLUS 命令提示符 sqlplus /nolog 5 在命令提示符以 OS 身份...

    oracle常用命令文档

    ### Oracle 常用命令与操作指南 #### 一、Oracle 安装与卸载注意事项 **1.1 Oracle 的安装** - **安装步骤:** 对于 Oracle 的安装,网络上有很多详细的指导教程。在安装过程中,需要注意的是,管理口令部分确保...

    ORACLE常用命令

    ### ORACLE常用命令详解 #### 一、ORACLE的启动和关闭 在ORACLE数据库管理中,正确地启动和关闭数据库是非常重要的操作之一。这些操作不仅涉及到系统的稳定性,还关系到数据的安全性。 ##### 1、在单机环境下 ...

    最全的oracle常用命令大全.txt

    ORACLE常用命令 一、ORACLE的启动和关闭 1、在单机环境下 要想启动或关闭ORACLE系统必须首先切换到ORACLE用户,如下 su - oracle a、启动ORACLE系统 oracle&gt;svrmgrl SVRMGR&gt;connect internal SVRMGR&gt;startup ...

    natstat,oracle常用命令常用命令

    natstat,oracle常用命令常用命令natstat,oracle常用命令常用命令natstat,oracle常用命令常用命令natstat,oracle常用命令常用命令natstat,oracle常用命令常用命令

    Oracle常用命令速查手册中文PDF版最新版本

    《Oracle常用命令速查手册》将介绍一些常用的Oracle命令和其用法,比如数据导入导出命令、存储过程和触发器的管理以及性能监控等方面的常用命令,通过简单明了的示例,展示了每个命令的用法和效果,以帮助读者更好地...

    linux和Oracle常用命令linux环境配置ORACLE常用命令

    linux,linux和Oracle常用命令linux环境配置ORACLE常用命令

    ORACLE常用命令大全.

    以下是一些关于Oracle常用命令的详细说明,分为日志管理和表空间管理两大部分。 ### 日志管理 #### 1. 强制日志切换 ```sql alter system switch logfile; ``` 这个命令用于在当前重做日志文件填满前强制进行日志...

    Oracle常用命令大全

    ### Oracle常用命令详解 #### 一、Oracle的启动与关闭 **1. 在单机环境下的启动与关闭** - **启动Oracle系统** - **切换用户:** 首先需要切换到Oracle用户环境。 ```bash su - oracle ``` - **使用`svrmgrl`...

    oracle常用命令 收集

    oracle常用命令收集 oracle常用命令

    Oracle常用命令大汇总.doc

    Oracle常用命令大汇总 Oracle是世界上最流行的关系数据库管理系统之一,由Oracle Corporation开发和维护。作为一个功能强大的数据库管理系统,Oracle提供了许多实用的命令来帮助数据库管理员和开发者更好地管理和...

    Oracle常用命令大汇总

    第一章:日志管理 1.forcing log switches sql&gt; alter system switch logfile; 2.forcing checkpoints sql&gt; alter system checkpoint; 3.adding online redo log groups sql&gt; alter database add log...

    Oracle常用命令

    Oracle创建删除用户、角色、表空间、导入导出数据库命令行方式总结.pdf

    ORACLE常用命令举例

    ORACLE常用命令举例 ORACLE常用命令举例 ORACLE常用命令举例 ORACLE常用命令举例 ORACLE常用命令举例

    ORACLE常用命令集

    ### ORACLE常用命令集 #### 一、日志管理 在Oracle数据库中,日志管理是维护数据库稳定性和完整性的重要组成部分。以下是一些常见的Oracle日志管理命令。 **1. 强制日志切换** - **命令**: `alter system ...

Global site tag (gtag.js) - Google Analytics