`
desert3
  • 浏览: 2141817 次
  • 性别: Icon_minigender_1
  • 来自: 合肥
社区版块
存档分类
最新评论

常用oracle sql一览

阅读更多
--查看oracle数据库表,索引所占用的空间大小
Select Segment_Name, Sum(bytes) / 1024 / 1024/1024 as Gsize
From User_Extents
Group By Segment_Name
order by Gsize desc

--oracle hint 强制指定走索引
select /*+ index(t,IDX_AR_SELL)*/t.province, t.city, t.country
  from ar_sell t
 group by t.type_code,t.province, t.city, t.country;

--查看oracle数据库语言和编码
select userenv('language') from dual;
SIMPLIFIED CHINESE_CHINA.ZHS16GBK

--查看包含undo的oracle参数
show parameter undo

--查看ORA-30012的错误信息
oerr ora 30012

--通过进程号取得相关的sql语句
SELECT /*+ ORDERED */
sql_text
FROM v$sqltext a
WHERE (a.hash_value, a.address) IN (
SELECT DECODE (sql_hash_value,
0, prev_hash_value,
sql_hash_value
),
DECODE (sql_hash_value, 0, prev_sql_addr, sql_address)
FROM v$session b
WHERE b.paddr = (SELECT addr
FROM v$process c
WHERE c.spid = '&pid'))
ORDER BY piece ASC

--正则表达式替换
select regexp_replace('hello hello everybody,may I have your attention please?','^hello','one') from dual;
select regexp_replace('hello hello everybody,may I have your attention please?','^hello$','one') from dual;
select regexp_replace('hello hello everybody,may I have your attention please?','hello','one') from dual;
UPDATE table1 t  
   SET t.sale = REPLACE(t.sale, '替换前', '替换后')  
 WHERE t.sale like '%替换前%'; 

--rollup grouping wm_concat rank 
select grouping(t.type_code),grouping(t.year_month), t.type_code, t.year_month, count(*),
rank() over (partition by t.type_code order by count(*) desc)
  from ar_sell t
 group by rollup(t.type_code, t.year_month)
 order by t.type_code, t.year_month

-- having重复检测
select PD_ID,count(shop_id) from SHOP_PD 
group by PD_ID,shop_id 
having count(shop_id ) > 1

--start with connect by
SELECT *
  FROM DEALER_MODULE
 WHERE DEL_MARK = 0
 start with MOD_ID = 430
connect by prior PAR_ID = MOD_ID
 ORDER BY level desc, MOD_ID, ORDER_VALUE

-- 不是数字
select * from dual where 
not REGEXP_LIKE('1不是数字1', '^[0-9]+\.{0,1}[0-9]*$')

-- 是数字
select * from dual where 
REGEXP_LIKE('1.1', '^[0-9]+\.{0,1}[0-9]*$')
 
--查看表是否被锁
SELECT a.sid, b.owner, object_name, object_type
  FROM v$lock a, all_objects b
 WHERE TYPE = 'TM'
   and a.id1 = b.object_id;
--删除被锁表
SELECT sid,serial# FROM v$session WHERE sid = &sid;
alter system kill session ‘sid,serial#’;

--查询服务器中哪些语句走的是全表扫描
select * from v$session_longops order by start_time desc;
select opname,target,start_time,last_update_time,sql_hash_value from v$session_longops order by start_time desc;
--根据sql_hash_value查询到相关的sql语句
select * from v$sqltext where hash_value=822428411 order by piece;

--查询每台应用服务器占用仍然存活的oracle数据库会话情况
select machine, count(*) c from v$session where status = 'ACTIVE' group by machine order by c desc;
--查询当前数据库的所有会话(有效,无效)
select status,count(status) from v$session group by status;
--查询每台应用服务器占用oracle数据库会话情况
select machine, count(*) c from v$session group by machine order by c desc;
--根据机器名查询该机器发出的所有会话
select *  from v$session machine where machine like '%computername%'

--版本
select * from v$version
--所有事件分类
select * from v$event_name
--视图记录的是数据库当前连接的session信息(动态信息)
select * from v$session
--视图记录的是当前数据库连接的活动session正在等待的资源或者事件信息。
select * from v$session_wait
SELECT * FROM v$session_event
--视图记录数据库启动以来所有等待事件的汇总信息。通过v$system_event视图,用户可以迅速第获得数据库运行的总体概括
select * from v$system_event
--通过会话id(sid)查看关联的完整sql
select sql_text
  from v$sqltext a
 where a.hash_value =
       (select sql_hash_value from v$session b where b.sid = '989')
 order by piece asc

select a.CPU_TIME,--CPU时间 百万分之一
       a.OPTIMIZER_MODE,--优化方式
       a.EXECUTIONS,--执行次数
       a.DISK_READS,--读盘次数
       a.SHARABLE_MEM,--占用shared pool的内存多少
       a.BUFFER_GETS,--读取缓冲区的次数
       a.COMMAND_TYPE,--命令类型(3:select,2:insert;6:update;7delete;47:pl/sql程序单元)
       a.SQL_TEXT,--Sql语句
       a.SHARABLE_MEM,
       a.PERSISTENT_MEM,
       a.RUNTIME_MEM,
       a.PARSE_CALLS,
       a.DISK_READS,
       a.DIRECT_WRITES,
       a.CONCURRENCY_WAIT_TIME,
       a.USER_IO_WAIT_TIME
  from SYS.V_$SQLAREA a
 WHERE PARSING_SCHEMA_NAME = 'CHEA_FILL'--表空间
 order by a.CPU_TIME desc

--建立物化视图
CREATE MATERIALIZED VIEW mv_base_province_list
TABLESPACE tbl_pro --保存表空间 
BUILD IMMEDIATE --创建视图时就生成数据 
REFRESH FORCE --如果可以快速刷新则进行快速刷新,否则完全刷新 
on demand --按照指定方式刷新 
START WITH SYSDATE --第一次刷新时间 
next SYSDATE + 1 as
select case
         when t3.p_name is not null then
          t3.p_name || ',' || t2.p_name || ',' || t1.p_name
         when t2.p_name is not null then
          t2.p_name || ',' || t1.p_name
         else
          t1.p_name
       end as p_full_name,
       t1.*
  from base_province_list t1
  left join base_province_list t2 on t1.par_index = t2.p_index
                                 and t2.par_index is not null
  left join base_province_list t3 on t2.par_index = t3.p_index
                                 and t3.par_index is not null
--增删改重命名
alter table liu rename to jin
alter table cai add  (d varchar2(30),e number(4))
alter table cai rename column e  to f
alter table cai modify d varchar(40)
alter table cai drop column  f
ALTER TABLE AR_SELL MODIFY YEAR_MONTH NUMBER(6);
CREATE TABLE TEMP_TABLE AS SELECT * FROM AR_SELL WHERE 1 = 2;
ALTER TABLE TEMP_TABLE MODIFY YEAR_MONTH NUMBER(6);
INSERT INTO TEMP_TABLE SELECT * FROM AR_SELL;
COMMIT;
DROP TABLE AR_SELL;
RENAME TEMP_TABLE TO AR_SELL;
create table tbl1 as select * from tbl;

--tablespace
CREATE TABLESPACE PRJ_AR
DATAFILE 'G:\ORACLE\PRODUCT\10.2.0\ORADATA\EXDB\PRJ_AR' SIZE 50M REUSE AUTOEXTEND ON NEXT 1M MAXSIZE UNLIMITED
LOGGING
ONLINE
BLOCKSIZE 8K
EXTENT MANAGEMENT LOCAL AUTOALLOCATE
SEGMENT SPACE MANAGEMENT AUTO
/
--user
CREATE USER PRJ_AR
IDENTIFIED BY PRJ_AR
DEFAULT TABLESPACE PRJ_AR
TEMPORARY TABLESPACE TEMP
PROFILE DEFAULT
/
GRANT CONNECT TO PRJ_AR
/
GRANT DBA TO PRJ_AR
/
GRANT CREATE PROCEDURE TO PRJ_AR
/
GRANT CREATE SEQUENCE TO PRJ_AR
/
GRANT CREATE SESSION TO PRJ_AR
/
GRANT CREATE TABLE TO PRJ_AR
/
GRANT UNLIMITED TABLESPACE TO PRJ_AR
/

--锁定,解锁用户
alter user  user_name account  unlock; 
alter user  user_name account  lock; 

--分区
create table tbl(id number)
 partition by list
 (id)
    (
        partition
             PT_tbl_1
            values (1),
        partition
             PT_tbl_2
            values (2),
        partition
             PT_tbl_default
            values (default)
    );
--检查分区
select partition_name,high_value,t.* from user_tab_partitions t where table_name='tbl'
--分区索引(local后面不跟参数默认对所有分区建立相应索引)
create index IDX_tbl_YEAR_MONTH on tbl (
   YEAR_MONTH ASC
)
tablespace tblspace_IDX
local
--索引分区
--rebuild索引
alter index IDX_tbl_YEAR_MONTH rebuild;
alter index IDX_tbl_YEAR_MONTH rebuild online;

--sqlplus->新建->命令窗口 分析表(建立索引后,重新分析表,执行计划才会更新)
execute dbms_stats.gather_table_stats(ownname => 'USER_NAME',tabname => 'TABLE_NAME' ,estimate_percent => null ,method_opt => 'for all indexed columns' ,cascade => true ,degree => 1);

--oracle语法(通过表B的条件来更新表A的内容)
UPDATE A SET (A1, A2, A3) = (SELECT B1, B2, B3 FROM B WHERE A.ID = B.ID);
update entp_shop t
   set link_email = (select t1.email
                       from user_info t1
                      where t.shop_id = t1.shop_id
                        and t1.email is not null)
 where t.link_email is null
   and t.p_index like '34%';
--sql server语法
UPDATE A SET A1 = B1, A2 = B2, A3 = B3 FROM A, B WHERE A.ID = B.ID

--增加表空间数据文件
ALTER TABLESPACE "TBS_PRO" ADD DATAFILE 'D:\ORACLE\ORADATA\PRO01.DBF' SIZE 2048M REUSE
分享到:
评论

相关推荐

    oracle错误一览表.txt

    oracle 错误一览表 oracle error-code

    MySQL与Oracle SQL语言差异比较一览

    主要介绍了MySQL与Oracle SQL语言差异比较一览,需要的朋友可以参考下

    PL/SQL经典介绍

    第一章 PL-SQL一览 第二章 PL-SQL基础 第三章 PL-SQL数据类型 第四章 PL-SQL的控制结构 第五章 PL-SQL集合与记录(1) 第六章 PL-SQL集合与记录(2) 第七章 PL-SQL与Oracle间交互 第八章 控制PL-SQL错误 第九章 ...

    电话号码归属地 一览表(oracle格式)

    最新的电话号码归属地一览表,可以直接查询电话号码的归属地, 更新到2018年,oracle格式的SQL语句,可以直接导入使用。

    PL/SQL 用户指南与参考

    第一章 PL/SQL一览 第二章 PL/SQL基础 第三章 PL/SQL数据类型 第四章 PL/SQL的控制结构 第五章 PL/SQL集合与记录 第六章 PL/SQL与Oracle间交互 第七章 控制PL/SQL错误 第八章 PL/SQL子程序 第九章 PL/SQL包...

    oracle错误码一览表

    文章给出了所以pl/sql里面的错误码,给用于大家快速定位。

    PL-SQL用户指南与参考

    ·第十二章 PL/SQL应用程序性能调优 2008-04-08 · 第十一章 本地动态SQL 2008-04-08 · 第十章 PL/SQL对象类型 2008-04-08 · 第九章 PL/SQL包 2008-04-08 · 第八章 PL/SQL子程序...· 第一章 PL/SQL一览

    PLSQL用户指南与参考.pdf

    第一章 PL/SQL 一览 第二章 PL/SQL 基础 第三章 PL/SQL 数据类型 第四章 PL/SQL 的控制结构 第五章 PL/SQL 集合与记录 第六章 PL/SQL 与 Oracle 间交互 第七章 控制 PL/SQL 错误 第八章 PL/SQL 子程序 第九章 PL/SQL...

    基于Java和Oracle实现的图书馆管理系统设计含全部java源码和SQL文件.rar

    import java.sql.*; import javax.swing.table.*; import java.util.Vector; public class BorrowBookList extends JFrame implements ActionListener { DataBaseManager db=new DataBaseManager(); ResultSet rs;...

    oracle数据库对象备份与恢复脚本工具

    3、脚本一览 getallcode.sql:导出数据库所有过程、函数、包、包体 getusercodes.sql:导出数据库指定用户的过程、函数、包、包体 getcode.sql:导出数据库指定的某个用户的某个过程或函数或包 getalltrigs.sql:...

    2022最新版全国省市区县sql数据大全(邮编+经纬度坐标+拼音)

    该文件MySQL数据库或者Oracle通用。 --表字段名可以随便修改,但顺序不能调整 create table city ( id int primary key not null, -- 区域主键 name varchar(50), -- 地区名称 pId int, ...

    Object Browser7.0中文版(ORACLE数据库的开发工具)

    另外,在显示结果的同时,SQL的执行计划和统计信息也被显示出来,这样您可以一边看着Oracle的内部优化算法,一边做出高效率的程序来.     Object Browser也支持托拽机能.对已经保存好的...

    JDBC驱动资料一览表

    jdbc的驱动资料一览 有Oracle数据库 SQL Server数据库 MySQL数据库 Access数据库

    ob9数据库查看工具中文版.rar

    另外,也可以显示连接中的会话以及锁信息一览。输出数据库对象脚本能输出数据库对象的SQL脚本。有关输出方法可以灵活选择。比方说,同时输出多个对象的脚本到一个文件,还有输出时可以指定不要方案名等等,都可以...

    OCA认证考试指南(1Z0-052)

    1.1 oracle产品系列一览 1.2 解释关系结构 1.3 了解sql语言 1.4 了解dba的角色 1.5 小结 1.6 本章测试题 第2章 了解数据库体系结构 2.1 描述单实例体系结构 2.2 解释内存结构 2.3 描述进程结构 ...

    数据库 关键字一览表

    数据库 关键字: 为了避免在数据库表结构设计过程中使用系统保留关键字我们必须知道数据库存在哪些关键字,接下来会列出mysql、oracle、sqlserver三个数据库各自的保留关键字。 Mysql ... ACCESSIBLE (R) ...

    asp.net知识库

    在Framework1.0下同时连接SqlServer和Oracle的一些体会 XML XPath XPath最通俗的教程(ZZ) XPath中相对路径和绝对路径 XPath 简单语法 Asp.Net(C#)利用XPath解析XML文档示例 XSL .Net框架下的XSLT转换技术简介 一个...

    HA_Passolo2011CollaborationSP6_gnatix.rar

    支持 ACCESS, Excel, SQL 服务器, Oracle, MySQL, IBM DB2 * Visual BASIC 6 二进制文件 * Visual BASIC 6 方案 (VBP) 和窗体 (FRM) 支持 WYSIWYG 编辑器以及从代码中提取文本 * 通用文本文件解析器 支持许多不同的...

    SDL Passolo 2011 合作版 SP9 (11.9.0.53) 已注册中文版

    支持 ACCESS, Excel, SQL 服务器, Oracle, MySQL, IBM DB2 * Visual BASIC 6 二进制文件 * Visual BASIC 6 方案 (VBP) 和窗体 (FRM) 支持 WYSIWYG 编辑器以及从代码中提取文本 * 通用文本文件解析器 支持许多不同的...

Global site tag (gtag.js) - Google Analytics