Oracle
OracleOracleOracleOracleOracleOracleOracleOracleOracleOracleOracleOracleOracleOracleOracleOracleOracleOracleOracleOracleOracleOracleOracleOracleOracle
蔡大远
这个作者很懒,什么都没留下…
展开
-
SQL:REGEXP 正则表达式
点我跳转原创 2021-07-08 10:21:08 · 543 阅读 · 0 评论 -
oracle中使用count加条件统计
1:COUNT(1) FROM 表 WHERE IS_VALID = 02: COUNT( CASE IS_VALID WHEN 0 THEN CASE INVALID_CAUSE WHEN 1 THEN 1 ELSE NULL END ELSE NULL END) 实例:计算出1980,1981,1982三年入职的员工总人数和每年入职人数.select count(empno) total,c原创 2021-03-10 17:37:22 · 8460 阅读 · 1 评论 -
Oracle根据外键名查找外键及表
根据外键名称获取外键表名Oracle数据库删除某张表里的数据时,有时由于有外键约束,外键表里有数据,主表数据删除不了,而外键命名不规范,难找外键表。这时可以根据外键名称查询外键表:select * from dba_constraints where constraint_name=‘xxx外键名’ and constraint_type = ‘R’;...原创 2021-02-26 16:31:25 · 3906 阅读 · 0 评论 -
Oracle ~ 保留小数问题
Oracle ~ 常用高级函数LENGTH|| 并置运算符nvlnvl2coalescreplaceSIGNsubstrtranslate(from_string和to_string中的字符是一一对应的,然后根据这种对应关系,将原字符串进行转换;select translate(‘ab123’, ‘abcdefg123’, ‘3456789abc’) from dual;结果是: 3b5abc)instrMySQL: select * from tableName where n原创 2020-12-22 16:08:46 · 228 阅读 · 0 评论 -
Oracle ~ 行转列(PIVOT)Oracle列转行_unpivot
Oracle ~ 行转列(PIVOT)Oracle列转行_unpivotOracle行转列(PIVOT) <点我点我可以跳转>Oracle列转行_unpivot <点我点我可以跳转>原创 2020-12-22 14:01:52 · 174 阅读 · 0 评论 -
Oracle ~ 伪列
Oracle ~ 伪列ORACLE ROWIDORACLE ROWNUMOracle的伪列是Oracle表在存储的过程中或查询的过程中,表会有一些附加列,称为伪列。伪列就像表中的字段一样,但是表中并不存储。伪列只能查询,不能增删改。Oracle的伪列有:rowid、rownum。ORACLE ROWIDOracle表中的每一行在数据文件中都有一个物理地址, ROWID 伪列返回的就是该行的物理地址。使用 ROWID 可以快速的定位表中的某一行。 ROWID 值可以唯一的标识表中的一行。通过Oracle原创 2020-12-16 09:42:31 · 175 阅读 · 0 评论 -
Oracle ~ 创建函数
Oracle ~ 创建自定义函数create or replace function sf_score_pm(p_in_stuid in varchar2,--学号p_in_courseid in varchar2 --课程ID)return numberisls_pm number:=0;ls_score number:=0;begin --获取该学生的成绩 select t.score into ls_score from score t where t.stuid =原创 2020-12-09 15:27:18 · 1119 阅读 · 0 评论 -
Oracle ~ Sequence实现自增
Oracle ~ Sequence实现自增背景代码实现方式一:序列化+触发器方式二:序列化+显示调用背景MySQL建表时必须有一个主键(PRIMARY KEY), 每条主键内容必须唯一(Unique), 所以经常使用一个”ID”字段作为主键,给它一个”auto_increment”属性,让”ID”字段每条记录都自增”1″。insert 的时候,用不着理会自增主键的value,插入新项时会自动给id赋值,插入新纪录时用不着考虑自增主键CREATE TABLE Demo ( id IN原创 2020-12-09 14:37:21 · 958 阅读 · 0 评论 -
Oracle ~ 重建索引(包括分区)
Oracle ~ 重建索引(包括分区)尽量不要重建索引真正需要重建索引的情形如何重建索引1、drop 原来的索引,然后再创建索引2 、直接重建2.1 alter index rebuild 和alter index rebuil online的区别注意点:重建分区表上的分区索引尽量不要重建索引a. 大多数脚本都依赖 index_stats 动态表。此表使用以下命令填充:analyze index … validate structure;尽管这是一种有效的索引检查方法,但是它在分析索引时会获取独占表原创 2020-12-09 13:48:03 · 4824 阅读 · 0 评论 -
Oracle ~ 索引种类、创建及管理
Oracle ~ 索引创建及管理1. Oracle 索引简介2. 创建索引2.1 B树索引2.2 位图索引2.3 反向键索引2.4 基于函数的索引3. 修改索引4. 删除索引5. 显示索引信息1. Oracle 索引简介 在 Oracle 数据库中,存储的每一行数据都有一个 rowID 来标识。当 Oracle 中存储着大量的数据时,意味着有大量的原创 2020-12-08 15:15:42 · 1179 阅读 · 0 评论 -
Oracle ~ 之创建树状结构
Oracle ~ 之创建树状结构 select t.branch_id, t.branch_no, t.branch_name, t.parent_branch_id, t.branch_id as key from ( ------------------------------------------------------------------------------------------------------------------原创 2020-12-07 17:56:47 · 491 阅读 · 0 评论 -
Oracle ~ 分区表(详细)
Oracle ~ 分区表(详细)表空间及分区表的概念表分区的具体作用表分区的优缺点表分区的几种类型及操作方法范围分区例一(按行数划分)例二(按时间划分)例三(MAXVALUE)二.列表分区例一例二三.散列分区(Hsah分区)例一组合分区组合列表分区组合Hash分区表分区的维护性操作添加分区删除分区截断分区合并分区拆分分区接和分区(coalesca)重命名表分区相关查询表空间及分区表的概念表空间: 是一个或多个数据文件的集合,所有的数据对象都存放在指定的表空间中,但主要存放的是表, 所以称作表空间。原创 2020-12-07 16:32:54 · 388 阅读 · 0 评论 -
Oracle ~ 在线重定义将普通表改为分区表
Oracle ~ 在线重定义将普通表改为分区表1.在线重定义2.在线重定义的方法3.实列3.1:建表(用主键的方式使用在线重定义)3.2:查看此表是否可以重定义(无报错即可)3.3:建立在线重定义需要的中间表,表结构就是要将原测试表重定义成什么样子3.4:启动在线重定义3.5:启动在线重定义后,中间表就可以查到原表的数据3.6:由于在生成系统中,在线重定义的过程中原数据表可能会发生数据改变,向原表中插入数据模拟数据改变3.7:此时原表被修改,中间表并没有更新3.8:使用dbms_redefinition包原创 2020-12-07 14:53:08 · 599 阅读 · 0 评论 -
oracle ~ 存储过程模板
CREATE OR REPLACE PROCEDURE EA_SCBS.P_STD_SH_PRODUCT_INFO ( AN_O_RET_CODE OUT NUMBER, AV_O_RET_MSG OUT VARCHAR2, AV_I_USER_CODE IN VARCHAR2, AN_I_CLEAR_DATE IN NUMBER, AV_I_TRADE_MKT_CODE IN VARCHAR2原创 2020-12-04 17:13:59 · 694 阅读 · 1 评论 -
Oracle ~ merge into 函数 (增量更新、全量更新)
Oracle merge into 函数 增量更新、全量更新1、数据导入功能,存在全量更新/增量更新的问题,简单记录使用 oracel 的 merge into 函数。2、全量更新(覆盖模式):数据库存在该条数据时,做更新操作。不存在时,做新增操作3、增量更新(跳过模式):数据库存在该条数据时,不做任何操作,不存在时,做新增操作。4、merge into 对千万级以上的数据更新,速度比较慢。merge into 使用merge into [target-table] A using [原创 2020-12-04 15:51:36 · 1408 阅读 · 0 评论 -
oracle ~ 查找表的操作记录
oracle ~ 查找表的操作记录1.查找操作表的历史纪录select *from v$sqlarea a where a.SQL_TEXT like '%表名称%' order by first_load_time desc;2.从上面的记录中找到update语句对应的sql_idselect * from v$sqltext a,v$sqlarea b where a.SQL_ID=b.SQL_ID and b.SQL_ID in('23bpngg54gf2j') orde原创 2020-12-04 15:07:32 · 7629 阅读 · 0 评论 -
Oracle ~ 创建物化视图
Oracle ~ 创建物化视图创建普通视图,因为物化视图不能有子查询更改物化视图每天运行时间查询注意:物化视图中不能用子查询,因此如果涉及子查询,需要先把sql写到普通视图,然后再将普通视图写入物化视图创建普通视图,因为物化视图不能有子查询```sqlCREATE OR REPLACE VIEW AISKWAR.Eco_war_total_VIEWas (SELECT t.* , ( SELECT COUNT(DISTINCT list_type || list_date)原创 2020-11-26 13:38:01 · 603 阅读 · 0 评论 -
oracle ~ 查找哪些存储过程用到了某表
select * from dba_source where text like '%aiskwar.war_atm_client_situation%' and type='PROCEDURE'原创 2020-11-18 15:12:57 · 4802 阅读 · 0 评论 -
oracle ~ 锁表之解锁
oracle ~ 锁表之解锁select session_id from v$locked_object;SELECT sid, serial#, username, osuser FROM v$session where sid = 2285;ALTER SYSTEM KILL SESSION '2285,9799';原创 2020-11-13 13:19:42 · 77 阅读 · 0 评论 -
Oracle ~ 之安装
由于此篇文章写的很好,照着装没问题,所以就不自己写了。感谢作者。文章转载的地址:原创 2020-08-31 12:43:19 · 93 阅读 · 0 评论