1、多行合并一行
SELECT city,listagg(upper(trim(tele_no)),',') within group(order by ID) tele_no_str
FROM CITY_TELE_NO
WHERE tele_no between 1519870 AND 1519874
GROUP BY city;
复制
2、一行拆分为多行
SELECT city, REGEXP_SUBSTR(tele_no_str, '[^,]+', 1, LEVEL, 'i') AS tele_no
FROM (SELECT * FROM CITY_TELE_NO WHERE tele_no_str LIKE '%,%' )
CONNECT BY prior rowid = rowid
and prior dbms_random.value is not null
and LEVEL <=regexp_count(tele_no_str, '[^,]+');
复制
3、查询树状结构表
select distinct transname,level grade,connect_by_root(source)sou --记录每条记录的根节点
from transdatamap_design
--where ...
start with source in('99165','99154') --指定根节点
--nocycle:忽略环,上条transname作为本条source递归查询
connect by nocycle prior transname=source
order by grade;
--调整关联可向上或向下查询
复制
4、回收站相关
--删除表不进回收站
DROP TABLE 'table_name' PURGE;
--查看回收站中表
select * from recyclebin;
--恢复表
flashback table test_drop to before drop;
or
flashback table "BIN$b+XkkO1RS5K10uKo9BfmuA==$0" to before drop;
--清除回收站中表
PURGE TABLE 'table_name';
or
PURGE TABLE "BIN$b+XkkO1RS5K10uKo9BfmuA==$0";
--清空回收站
purge recyclebin;
复制
5、获取DDL语句
--建表语句
select dbms_metadata.get_ddl('TABLE','TELE_NO_NEW','ODS') from dual;
--存储过程
select dbms_metadata.get_ddl('PROCEDURE','EX_TELE_NO','DW') from dual;
复制
6、时间日期相关
--date精确到秒(yyyy-mm-dd hh24:mi:ss),相减得到的时间差单位为“天”
--分钟差(小时差、秒差以此类推):
select ROUND(TO_NUMBER(to_date('2021-07-24 18:12:00','yyyy-mm-dd hh24:mi:ss') - sysdate)*24*60) from dual;
--timestamp是DATE类型的扩展,可以精确到小数秒,可以是0-9,缺省是6(yyyy-mm-dd hh24:mi:ss:ff3)
--两个timestamp相减的话,得到的是,多少天,多少小时,多少秒等
select to_timestamp('2021-07-24 18:12:00','yyyy-mm-dd hh24:mi:ss')-systimestamp from dual;
--结果:+000000001 02:41:28.032000000 (1天2小时42分钟28.032秒)
复制
7、分组聚合函数
分组函数涉及较多,另写一篇记录,详见《Oracle分组聚合函数》
文章转载自紫龙的信仰,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
评论
相关阅读
Oracle DataGuard高可用性解决方案详解
孙莹
433次阅读
2025-03-26 23:27:33
Oracle RAC 一键安装翻车?手把手教你如何排错!
Lucifer三思而后行
405次阅读
2025-04-15 17:24:06
墨天轮个人数说知识点合集
JiekeXu
369次阅读
2025-04-01 15:56:03
XTTS跨版本迁移升级方案(11g to 19c RAC for Linux)
zwtian
360次阅读
2025-04-08 09:12:48
Oracle SQL 执行计划分析与优化指南
Digital Observer
335次阅读
2025-04-01 11:08:44
Oracle 19c RAC更换IP实战,运维必看!
szrsu
302次阅读
2025-04-08 23:57:08
风口浪尖!诚通证券扩容采购Oracle 793万...
Roger的数据库专栏
294次阅读
2025-03-24 09:42:53
oracle定时任务常用攻略
virvle
288次阅读
2025-03-25 16:05:19
切换Oracle归档路径后,不能正常删除原归档路径上的归档文件
dbaking
288次阅读
2025-03-19 14:41:51
3月“墨力原创作者计划”获奖名单公布
墨天轮编辑部
286次阅读
2025-04-15 14:48:05