![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
oracle
文章平均质量分 63
BikeRiver
一个不会后端的前端工程师不是一个好的技术负责人
展开
-
oracle 按特定分组去重
– 相同数据去重的方案DELETE FROM st_pptn_r WHERE ROWID IN (SELECT ROWid FROM (SELECT row_number() over (partition by stcd,tm order BY tm DESC ) AS num, ROWID FROM st_pptn_r ) a WHERE a.num >1)原创 2021-07-09 14:12:09 · 520 阅读 · 0 评论 -
oracle 数据库 导入导出
只能exp imp在数据库服务器端进行导入导出操作,客户端导入导出请使用expdp``impdpexp1)exp通常导不出空表(设置 deferred_segment_creation 参数为FALSE可以导出之后建立的空表)2)Oracle11G引入了INTERVAL分区,INTERVAL分区不支持EXP导出### 1.导出用户库exp user/pwd@orcl file='...转载 2020-11-23 15:07:58 · 118 阅读 · 0 评论 -
ORACLE LEVEL,CONNECT BY,PRIOR,START WITH
level 、connect by、 prior、 start with原创 2021-07-05 15:20:02 · 558 阅读 · 0 评论 -
表空间不足问题-表空间文件自增
查看表 空间命令--查看表空间SELECT * from dba_tablespaces;--查看表空间文件路径select tablespace_name,file_id,file_name from dba_data_files order by 1,2;--查看用户和默认表空间的关系SELECT username,default_tablespace from ...原创 2019-03-27 08:59:07 · 718 阅读 · 0 评论 -
Oracle 强制中止正在执行的SQL语句
-- 1 查询正在执行的sql语句select b.sid, b.username, b.serial#, a.spid, b.paddr, c.sql_text, b.machinefrom v$process a, v$session b, v$sqlarea cwhere a.addr = b.paddrand b.sql_hash_value = c.hash_value...转载 2018-08-23 11:28:09 · 13855 阅读 · 2 评论 -
Oracle创建库表
--如何查看自己数据库文件存放位置select tablespace_name,file_id,file_name from dba_data_files order by 1,2;--以sys账号登陆--建立用户表空间,索引表空间,创建用户,授权,分配配额:--创建用户表空间--基础区CREATE TABLESPACE TABLESPACE_NAME DATAFILE...转载 2019-01-04 09:33:45 · 225 阅读 · 0 评论 -
oracle 行,列转换
多列转字符串这个比较简单,用||或concat函数可以实现select concat(id,username) str from app_userselect id||username str from app_user字符串转多列实际上就是拆分字符串的问题,可以使用 substr、instr、regexp_substr函数方式字符串转多行使用union all函数等方...原创 2019-03-08 09:48:01 · 314 阅读 · 0 评论 -
oracle关键字与保留字
必须是DBA账户才可以,DataBase Administrator东西可以在oracle 上输入一个sql语句就可以得到:select * from v$reserved_words order by keyword asc; 使结果不至于杂乱无章,如果用的是PL/SQL的话的SQL window的话,在获得结果后,可以点击按钮,使得查询结果不分页,然后可以 右击结果区空白处---&gt...原创 2019-03-12 15:00:17 · 1045 阅读 · 0 评论 -
oracle 内置函数-decode、sign
signsign(n)取数字n的符号,大于0返回1,小于0返回-1,等于0返回0配合deocode 实现比较SELECT DECODE(SIGN(1 - 2), 1, '正', -1, '负', '零') AS RESULT FROM DUALdeocodeDECODE(value, if1, then1, if2,then2, if3,then3, . . . else )...原创 2019-03-22 14:54:55 · 238 阅读 · 0 评论 -
oracle 自增长触发器
自增长create or replace trigger "TRI_tb_tableconfig" before inserton tb_tableconfig for each rowdeclare integrity_error exception; errno integer; errmsg char(200);...原创 2019-03-29 09:29:55 · 696 阅读 · 0 评论 -
ORACLE在线重定义--将普通表转化为分区表
10gR2需要将一个普通表转为按月分区提高查询效率测试如下:一、建立测试表SQL> CREATE TABLE T(ID NUMBER ,TIME DATE);Table created.SQL> DESC T; Name Null? Type --------------------...转载 2018-08-22 14:52:44 · 251 阅读 · 0 评论 -
Oracle数据库查询优化方案(处理上百万级记录如何提高处理查询速度)
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:select id from t where num is null可以在num上设置默认值0,确保表中num列没有null值,然后这样查询:select id from ...转载 2018-08-22 10:12:22 · 476 阅读 · 0 评论 -
Oracle trunc()函数的用法
--Oracle trunc()函数的用法/**************日期********************/1.select trunc(sysdate) from dual --2013-01-06 今天的日期为2013-01-062.select trunc(sysdate, 'mm') from dual --2013-01-01 返回当月第一天.3.select转载 2017-05-19 14:35:04 · 179 阅读 · 0 评论 -
oracle 恢复delete数据
--1.基于 AS OF TIMESTAMP--查找 tablename 在某一个时刻下数据SELECT * FROM tablename AS OF TIMESTAMP TO_TIMESTAMP('2010-12-15 11:10:17', 'YYYY-MM-DD HH:MI:SS') --例如插入某表五分钟前时刻数据INSERT INTO tablename SELE...原创 2017-03-14 08:22:20 · 198 阅读 · 0 评论 -
oracle中时间操作
1 使用内置函数numtodsinterval增加小时,分钟和秒增加3年select sysdate,sysdate+numtoyminterval(3,'year') as res from dual;增加3小时select sysdate,sysdate+numtodsinterval(3,'hour') as res from dual;2 加一个简单的数来增加天...转载 2017-11-21 15:03:49 · 166 阅读 · 0 评论 -
遇见问题记录-oracle表,行死锁
现象:oracle中删除一条数据时无法被顺利执行,但同表的其它数据可以被删除oracle行锁定造成原因不明解决方法原创 2017-11-22 16:42:57 · 382 阅读 · 0 评论 -
oracle 分割字符串,转多行
由于varchar2的问题,长度限制为4000首先创建Typestrsplit_typeCREATE OR REPLACE TYPE strsplit_type IS TABLE OF VARCHAR2 (4000)然后创建函数strsplitCREATE OR REPLACE FUNCTION STRSPLIT(P_VALUE VARCHAR2, ...转载 2018-01-04 11:51:28 · 1057 阅读 · 0 评论 -
oracle大表添加字段default经验分享
当oracle单表数据量上亿时,对表进行alter table aa add column_1 varchar2(2) defalut 'Y';时,效率及安全性是必须考虑的因素。 本帖以2亿的数据表aa举例: alter table aa add column_1 varchar2(2) defalut 'Y'; Table altered Executed in 3600 seconds 直接用...转载 2018-04-04 15:16:27 · 4710 阅读 · 0 评论 -
oracle 终止存储过程
1.查找正在运行的存储过程select *from v$db_object_cachewhere locks > 0 and pins > 0 and type='PROCEDURE';2.查找对应的sidSELECT t.* FROM V$ACCESS t WHERE t.object='PROC_FIX_SHP_PROJECT_ONOFF'; 3.根据sid查找对应的seria...转载 2018-05-14 11:00:04 · 4558 阅读 · 0 评论 -
oracle-时间操作-extract函数
//oracle中extract()函数从oracle 9i中引入,用于从一个date或者interval类型中截取到特定的部分 EXTRACT ( { YEAR | MONTH | DAY | HOUR | MINUTE | SECOND } | { TIMEZONE_HOUR | TIMEZONE_MINUTE } | { TIME...转载 2018-05-16 10:25:46 · 1795 阅读 · 3 评论