
Oracle
一点也不想取名
这个作者很懒,什么都没留下…
展开
-
Oracle导入导出数据
Oracle导入导出数据原创 2022-08-05 09:26:07 · 2884 阅读 · 0 评论 -
Oracle CONNECT BY根据特定字符拆分字符串
Oracle通过CONNECT BY根据特定字符拆分字符串原创 2022-07-26 13:32:05 · 614 阅读 · 0 评论 -
oracle listagg如何去重
listagg去重去重思路:利用listagg会忽略null值的特点按ENTITY_GROUP_RRN 分组,用 listagg 去重合并 EQPT_ID 与 STATION_ID表 T_TEST 数据如下:EQPT_IDENTITY_GROUP_RRNSTATION_IDTOOL-00110493721JITAI-1TOOL-00310493721JITAI-1TEST10493721S1TEST10493721S2TEST原创 2021-07-31 00:43:44 · 12902 阅读 · 0 评论 -
oracle 字符串去重
select regexp_replace('1,1,3,5,5', '([^,]+)(,\1)*(,|$)', '\1\3') from dual;原创 2021-07-30 10:11:56 · 1915 阅读 · 0 评论 -
oracle数据库中in和exists对比
标题In和exists对比:若子查询结果集比较小,优先使用in,若外层查询比子查询小,优先使用exists。因为若用in,则oracle会优先查询子查询,然后匹配外层查询,若使用exists,则oracle会优先查询外层表,然后再与内层表匹配。最优化匹配原则,拿最小记录匹配大记录。...原创 2021-07-30 08:58:03 · 792 阅读 · 0 评论 -
Oracle 转义符 ESCAPE
Oracle 转义符 ESCAPE示例SELECT 1 FROM DUAL WHERE 'EU_123' LIKE 'EU\_%' ESCAPE '\';原创 2021-07-29 17:17:03 · 318 阅读 · 0 评论 -
oracle函数 wm_concat 与 listagg
oracle函数 wm_concat 与 listaggwm_concatselect t.type, to_char(wm_concat(t.id)) as ids, to_char(wm_concat(t.seq)) as seqsfrom ( select 'A' type, 'A001' id, 1 seq from dual union all select 'A' type, 'A002' id, 2 seq from dual union all select 'B'原创 2021-07-28 21:03:55 · 2998 阅读 · 0 评论 -
分析函数(partition by)与 开窗函数(over())
@[TOC](分析函数(partition by)与 开窗函数(over()))分析函数(partition by):分析函数是Oracle专门用于解决复杂报表统计需求的函数,它可以在数据中进行分组,然后计算基于组的某种统计值,并且每一组的每一行都可以返回一个统计值。普通的聚合函数用group by分组,每个分组返回一个统计值,只有一行,而分析函数采用partition by分组,每组中包含多个值。开窗函数(over()):开窗函数指定了分析函数中的分组的大小。分析函数带有一个开窗函数over原创 2020-07-17 09:58:04 · 2448 阅读 · 0 评论 -
sqlnet.ora、tnsnames.ora、listener.ora配置
sqlnet.ora示例:NAMES.DIRECTORY_PATH= (TNSNAMES, ONAMES, HOSTNAME)那么在客户端执行sqlplus username/password@local_dev连接数据库的时,首先采用tnsnames.ora的别名配置连接数据库;如果连接上;再采用ONAMES进行解析,最后采用主机名进行解析。ONAMES表示Oracle使用自己的名称服务器(Oracle Name Server)来解析,目前Oracle建议使用轻量目录访问协议LDAP来取代ONAM原创 2020-05-24 10:51:18 · 282 阅读 · 0 评论 -
oracle连接与配置(命令、jdbc等方式),以及数据库实例名与SERVICE_NAME的区别
一、连接1、cmd命令远程连接sqlplus usr/pwd@//host:port/sidsqlplus xxx/xxx@192.168.xx.xx:1521/orcl2、cmd命令本地sqlplus xxx/xxx@orcl3、程序中使用driverClassName=oracle.jdbc.OracleDriverurl=jdbc:oracle:thin:@192.168.xx.xx:1521:orclusername=xxxpassword=xxx说明:url=jdbc:ora原创 2020-05-18 23:06:58 · 5006 阅读 · 0 评论 -
子查询in 为何不能用order by
oracle子查询中能使用order by吗 SQL code: SQL> select * from dept a 2 where a.deptno in 3 ( 4 select b.deptno from dept b 5 order by b.dname 6 ) 7 ; order by b.dname * ERROR at line 5: ORA-00907: m原创 2017-02-23 22:52:17 · 4423 阅读 · 0 评论 -
rownum与Oracle分页SQL 以及提高分页查询效率
SELECT * FROM ( SELECT A.*, ROWNUM RN FROM (SELECT * FROM TABLE_NAME) T1 WHERE ROWNUM <= 10 ) WHERE RN >= 20原创 2016-11-23 17:11:34 · 3507 阅读 · 0 评论 -
Oracle IS NULL
Oracle中 数字的空、字符串的空、对象的空,都可以写成is null原创 2017-06-28 15:27:28 · 6710 阅读 · 0 评论 -
oracle 恢复delete数据
由于用的是Oracle数据库,这一点非常好,因为Oracle有闪回功能,瞬间眼前一片光芒。有两种方案解决此问题,具体操作:一:根据时间来恢复:1、查询数据库当前时间(目的是为了检查数据库时间是否与你电脑时间相近,避免时间不同而将数据恢复到错误时间点)select to_char(sysdate,‘yyyy-mm-dd hh24:mi:ss’) from dual;2、查询删除数据时间点...转载 2018-10-06 09:13:12 · 424 阅读 · 0 评论 -
oracle表空间查询、修改
表空间查询修改原创 2018-10-06 09:32:53 · 6085 阅读 · 1 评论 -
Oracle中判断一个字符串是否为全数字
1、regexp_likeSELECT * FROM (SELECT 'ABC#$&amp;amp;amp;amp;' AS data from dual UNION ALLSELECT 'AB123' AS data from dual UNION ALLSELECT '456' AS data from dual UNION ALLSELECT '7' AS data from dual ) WH...原创 2018-11-06 13:30:19 · 18976 阅读 · 0 评论 -
Oracle regexp_like 查询包含特定字符的字符串
1、查询包含 空格、6、7、*或者#等特殊字符的字符串SELECT * FROM (SELECT 'AB12 3' AS data from dual UNION ALLSELECT 'ABC*' AS data from dual UNION ALLSELECT 'ABC-#$' AS data from dual UNION ALLSELECT '456' AS data f...原创 2018-11-06 14:29:09 · 9200 阅读 · 0 评论 -
oracle查询表字段是否包含oracle关键字
select *from v$reserved_words where keywordin(select COLUMN_NAMEfrom all_tab_columnswhere table_name = 'SAMPLE_SELECTION_DETAIL' and owner='XS' -- 表名和用户名必须大写);能查询出来的字段,就是oracle关键字...转载 2018-11-20 23:38:10 · 2266 阅读 · 0 评论 -
oracle创建自增主键
1、创建序列create sequence SEQ_XXXminvalue 1nomaxvaluestart with 1increment by 1nocyclenocache;此时可直接使用insert into TABLE_XXX values (SEQ_XXX.nextval,‘张三’);2、创建触发器CREATE OR REPLACE TRIGGER TG_XXX...原创 2018-11-20 23:50:58 · 2734 阅读 · 0 评论 -
oracle regexp_replace 去空白符
SQL:SELECT regexp_replace(STR,'^\s*','*') AS &amp;amp;amp;quot;去掉左边空白符&amp;amp;amp;quot;, regexp_replace(STR,'\s*$','*') AS &amp;amp;amp;quot;去掉右边空白符&amp;amp;amp;quot;, regexp_replace(STR,'(^\s*)|(\s*$)','*') AS原创 2018-12-07 00:39:34 · 4555 阅读 · 0 评论 -
Oracle null值处理
Oracle null值处理数据库处理null值特点:除了nvl()函数之外,任何函数、运算符遇到值为 null 或者’’ 的数据都会被过滤掉 备注:oracle数据库中 null <==> ‘’with T as (SELECT '101' ID,null as the_name from dual)SELECT 1 "序号",count(*) NUM FROM T unio...原创 2019-03-18 18:21:43 · 1187 阅读 · 0 评论 -
rownum与order by 子句的执行顺序关系
如果select语句(非嵌套查询形式的)有order by子句,则order by子句一般都是最后一步执行的。但是如果order by子句里的字段被设置了主键约束或是被设置索引了,那么order by子句执行之后,oracle系统还会重新对结果集的rownum值进行编号。也就是说,order by子句里的字段被设置了主键约束(或是被设置索引)的select语句,先是在数据行选入结果集时对其进行一次编转载 2017-03-01 00:20:45 · 2375 阅读 · 0 评论