--查看oracle数据库表,索引所占用的空间大小Select Segment_Name, Sum(bytes) / 1024 / 1024/1024 as GsizeFrom User_ExtentsGroup By Segment_Nameorder 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_textFROM v$sqltext aWHERE (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 bWHERE b.paddr = (SELECT addrFROM v$process cWHERE 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 bySELECT * FROM DEALER_MODULE WHERE DEL_MARK = 0 start with MOD_ID = 430connect 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_waitSELECT * FROM v$session_event--视图记录数据库启动以来所有等待事件的汇总信息。通过v$system_event视图,用户可以迅速第获得数据库运行的总体概括select * from v$system_event--通过会话id(sid)查看关联的完整sqlselect 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 ascselect 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_listTABLESPACE tbl_pro --保存表空间 BUILD IMMEDIATE --创建视图时就生成数据 REFRESH FORCE --如果可以快速刷新则进行快速刷新,否则完全刷新 on demand --按照指定方式刷新 START WITH SYSDATE --第一次刷新时间 next SYSDATE + 1 asselect 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 jinalter table cai add (d varchar2(30),e number(4))alter table cai rename column e to falter table cai modify d varchar(40)alter table cai drop column fALTER 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;--tablespaceCREATE TABLESPACE PRJ_ARDATAFILE 'G:\ORACLE\PRODUCT\10.2.0\ORADATA\EXDB\PRJ_AR' SIZE 50M REUSE AUTOEXTEND ON NEXT 1M MAXSIZE UNLIMITEDLOGGINGONLINEBLOCKSIZE 8KEXTENT MANAGEMENT LOCAL AUTOALLOCATESEGMENT SPACE MANAGEMENT AUTO/--userCREATE USER PRJ_ARIDENTIFIED BY PRJ_ARDEFAULT TABLESPACE PRJ_ARTEMPORARY TABLESPACE TEMPPROFILE 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_IDXlocal--索引分区--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 sql一览
热度:32 发布时间:2016-05-05 13:55:17.0
相关解决方案
- 求教,SSH + ORACLE 日期处理有关问题
- hibernate 连接 oracle session 有关问题
- eclipse+tomcat6.0+oracle 10g配置数据库连接池的异常
- java 生成 word 封存到 oracle 数据库
- oracle 最大连市接数 为什么main方法无限拿连接
- oracle 分页排序,ssi,该怎么处理
- oracle 最近的时间(而不是前一天的时间) 跪求sql语句 。解决方法
- java.sql.SQLException: No suitable driver found for jdbc:oracle:thin:192.168解决思路
- java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver,该怎么处理
- Jsp + Oracle 怎么取回id,报错getInt not implemented for class oracle.jdbc.driver.T4CRo
- oracle 调用java程序,该如何处理
- oracle,该怎么解决
- 在 Hibernate3 查询不到 Oracle 11g 里的记录
- Oracle 评论排序!该怎么解决
- oracle 安装时出现 java tm 异常
- android访问其他数据库(如:oracle、MySql等),希望大家给点建议!解决方案
- oracle sql 有关问题
- oracle 安插 LONG VARCHAR 类型数据
- jdbc+oracle 11中文乱码(英文一般)-在线盼
- ORACLE 一条SQL的有关问题
- oracle loadjava如何用
- netbeans desktop Application 连 Oracle 数据库的有关问题
- Oracle 每天数据备份
- oracle,该如何处理
- C# + SQL server +oracle QQ交流群142703980解决方法
- 求 dotConnect for Oracle 控件破解解决方法
- grove 怎么连 oracle 数据库
- 怎么跟踪winform应用程序发送到数据库的sql(oracle、mssql)
- 小弟我在windows 2008 r2下,使用OleDB方式访问oracle时,提示:未在本地计算机下注册“OraOleDB.Oracle”提供程序
- , 每次玩ASP都会遇到一些恶心的有关问题, 这次是:未能加载文件或程序集“Oracle.DataAccess”或它的某一个依赖项