随笔分类 -  Oracle

摘要:一、判断是否为数字的方法 在Oracle中,常用的判断是否为数字的方法是使用REGEXP_LIKE函数和正则表达式。 SELECT CASE WHEN REGEXP_LIKE('123', '^[[:digit:]]+$') THEN '是数字' ELSE '不是数字' END AS check_r 阅读全文
posted @ 2023-09-10 10:47 每天进步多一点 阅读(7047) 评论(0) 推荐(0) 编辑
摘要:有的时候,我们在创建oracle 自增序列时,会报错。这个时候不用慌,表创建完了就不用管了。然后我们可以根据下面的教程中的第二步,第三步,来创建序列。 -- 第一步创建表 create table t_user( user_id number not null primary key, user_n 阅读全文
posted @ 2023-09-02 10:52 每天进步多一点 阅读(72) 评论(0) 推荐(0) 编辑
摘要:1、去空白符SQL: SELECT regexp_replace(STR,'^\s*','*') AS "去掉左边空白符", regexp_replace(STR,'\s*$','*') AS "去掉右边空白符", regexp_replace(STR,'(^\s*)|(\s*$)','*') AS 阅读全文
posted @ 2023-06-30 20:38 每天进步多一点 阅读(400) 评论(0) 推荐(0) 编辑
摘要:1、一行 SELECT T.ID, REGEXP_SUBSTR(T.VALS, '[^,]+', 1, LEVEL) AS VAL FROM (SELECT '101' ID, 'A,B' VALS FROM DUAL) T CONNECT BY LEVEL <= REGEXP_COUNT(T.VA 阅读全文
posted @ 2023-06-30 20:31 每天进步多一点 阅读(416) 评论(0) 推荐(0) 编辑
摘要:1.去重思路:利用listagg会忽略null值的特点 2.上SQL: with T_TEST as ( select 'TOOL-001' EQPT_ID, 10493721 ENTITY_GROUP_RRN, 'JITAI-1' STATION_ID from dual union all se 阅读全文
posted @ 2023-06-29 20:23 每天进步多一点 阅读(925) 评论(0) 推荐(0) 编辑
摘要:1. wm_concat select t.type, to_char(wm_concat(t.id||' '||t.seq)) as id_seq, to_char(wm_concat(t.seq)) as seqs from ( select 'A' type, 'A001' id, 1 seq 阅读全文
posted @ 2023-06-29 18:50 每天进步多一点 阅读(494) 评论(0) 推荐(0) 编辑
摘要:-- 声明游标;CURSOR cursor_name IS select_statement --For 循环游标 --(1)定义游标 --(2)定义游标变量 --(3)使用for循环来使用这个游标 declare --类型定义 cursor c_job is select empno,ename, 阅读全文
posted @ 2023-06-02 15:02 每天进步多一点 阅读(391) 评论(0) 推荐(0) 编辑
摘要:1.如果存在更新,不存在插入 MERGE INTO merge_target target USING (SELECT B.name,B.age,B.target_id FROM merge_source B) source ON (target.id=source.target_id) WHEN 阅读全文
posted @ 2023-05-15 20:24 每天进步多一点 阅读(986) 评论(0) 推荐(0) 编辑
摘要:数据库添加DBLink后,很容易出现一个问题:ORA-02049:超时:分布式事务处理等待锁ORA-02063:紧接着line(起自ODS_LINK) 问题原因分析:第一次执行操作后出错,数据库没有提交或回退,未关闭原有数据库窗口,重新打开新窗口执行数据插入操作,报ORA-02049错误。解决办法: 阅读全文
posted @ 2023-05-15 19:47 每天进步多一点 阅读(1193) 评论(0) 推荐(0) 编辑
摘要:1.获取日期元素 注意: 1).hh24写法指24小时,Oracle默认是12小时 2).分钟用mi,不要用mm,因为与之前的MM冲突 1-12小时写法 yyyyMMdd24miss(Oracle默认) 1-24小时写法 yyyyMMddHH24miss 获取日期元素: select to_char 阅读全文
posted @ 2023-05-08 15:03 每天进步多一点 阅读(163) 评论(0) 推荐(0) 编辑
摘要:--1.修改列名 alter table 表名 rename column 旧列名 to 新列名; --实例 alter table xsb rename column xh to 学号; --2.修改列类型 alter table 表名 modify (列名 varchar(256)); --实例 阅读全文
posted @ 2023-04-26 20:20 每天进步多一点 阅读(371) 评论(0) 推荐(0) 编辑
摘要:1.in参数:用于接收参数,在子程序内部,不能进行修改。当参数没有写模式的时候,默认的参数模式:in。例如:v_b number,其没有声明 in、out、in out,所以默认为in,in参数,则v_b 不能在子程序内部修改值。 2.out参数:out参数,输出模式的参数,用于输出值,会忽略传入的 阅读全文
posted @ 2023-04-26 20:16 每天进步多一点 阅读(529) 评论(0) 推荐(0) 编辑
摘要:一、前言oracle 创建表时,表名称会自动转换成大写,oracle 对表名称的大小写不敏感。 oracle 表命名规则: 1、必须以字母开头 2、长度不能超过30个字符 3、避免使用 Oracle 的关键字 4、只能使用A-Z、a-z、0-9、_#S 二、语法2.1 创建表 create tabl 阅读全文
posted @ 2023-04-02 15:56 每天进步多一点 阅读(1020) 评论(0) 推荐(0) 编辑
摘要:1.基础概念: 在Oracle中,any()表示括号内任何一个条件,只要有一个满足即可;而all()表示所有的条件都满足才可以。 2.代码演示: 1).all用法 --大于最大值 select * from A where id >= all(select id from A) --这相当于 sel 阅读全文
posted @ 2023-03-30 19:49 每天进步多一点 阅读(365) 评论(0) 推荐(0) 编辑
摘要:1.in参数:用于接收参数,在子程序内部,不能进行修改。当参数没有写模式的时候,默认的参数模式:in。例如:v_b number,其没有声明 in、out、in out,所以默认为in,in参数,则v_b 不能再在子程序内部修改值。 2.out参数:out参数,输出模式的参数,用于输出值,会忽略传入 阅读全文
posted @ 2023-03-30 19:43 每天进步多一点 阅读(436) 评论(0) 推荐(0) 编辑
摘要:触发器分类:DML触发器、DDL触发器、Databse触发器、instead of 替代触发器(参考2有详解) 作用: 保护数据的安全,监视对数据的各种操作,如'日志记录': 对重要表的 '修改' 进行记录 例如:当员工信息插入后,自动输出“插入成功”的信息。 create or replace t 阅读全文
posted @ 2023-03-30 19:24 每天进步多一点 阅读(404) 评论(0) 推荐(0) 编辑
摘要:创建索引一般分为在线索引和非在线索引,在线与非在线的区别:非在线锁表,优先创建索引,此时DML都被阻塞,所以快;相反,在线锁的是行而非表,通过临时表进行索引的创建,所以不会影响DML操作,但副作用就是慢。如果在生产环境操作,不停服务的话,势必导致创建索引期间仍有DML操作进来。另外如果是大表,那么采 阅读全文
posted @ 2023-03-24 20:21 每天进步多一点 阅读(2554) 评论(0) 推荐(0) 编辑
摘要:database link是定义一个数据库到另一个数据库的路径的对象,database link允许你查询远程表及执行远程程序。 Create database link: create public database link testDblink connect to dbName identi 阅读全文
posted @ 2023-03-24 20:13 每天进步多一点 阅读(243) 评论(0) 推荐(0) 编辑
摘要:(1). 首先创建一个存储过程,即需要定时执行的任务内容 create or replace procedure 存储过程名 as begin 执行内容; commit; end; 例定时修改某个表信息: create or replace procedure AUTO_MODIFY_GI as b 阅读全文
posted @ 2023-03-24 20:07 每天进步多一点 阅读(335) 评论(0) 推荐(0) 编辑
摘要:一、需求说明 目前需要开发的Oracle数据库中有些表记录的内容是中文的,需要按照中文的方式进行排序。 二、分析思路 如果查询的结果字符集为ZHS16GBK/ZH16GBK,则使用order by默认是按照汉字的拼音顺序进行排序的;否则为其他(如UTF8等字符集),那么汉字的排序是按照BINARY( 阅读全文
posted @ 2022-09-11 20:52 每天进步多一点 阅读(1087) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示