SELECT LEVEL l FROM dual CONNECT BY LEVEL<=5------------------华丽的分隔线----------with tas(select '男;女;其他' txt from dual)select regexp_substr(txt,'[^;]+',1,level) txt from t connect by  level<=length(txt)-length(replace(txt,';',''))+1或with tas(select '项目1;项目2;项目3' txt from dual)select regexp_substr(txt,'[^;]+',1,level) cc from t connect by  level<=REGEXP_COUNT(txt,';')+1------------------华丽的分隔线---------- SELECT * FROM (
SELECT EXTRACT(year from sysdate)-2 year from dual
UNION
SELECT EXTRACT(year from sysdate)-1 year from dual
UNION
SELECT EXTRACT(year from sysdate) year from dual
UNION
SELECT EXTRACT(year from sysdate)+1 year from dual
UNION
SELECT EXTRACT(year from sysdate)+2 year from dual
)A等价于SELECT EXTRACT(year from sysdate)-3+LEVEL year  from dual CONNECT BY LEVEL<=5或SELECT to_char(sysdate,'yyyy')-3+LEVEL year  from dual CONNECT BY LEVEL<=5------------------华丽的分隔线---------------- 把'2013-01'转成'201301'这种格式的select  to_char(to_date('2013-01','yyyy-MM'),'yyyyMM') aa from dual  ------------------华丽的分隔线---------------- 告诉一开始年月和结束年月,查出中间所有年月SELECT  to_char(add_months(to_date('2013-01','yyyy-MM'),LEVEL-1),'yyyy-MM')  NY  from dual CONNECT BY LEVEL<= (select months_between(to_date('2013-12','yyyy-MM'),to_date('2013-01','yyyy-MM'))+1 "MONTHS" FROM DUAL)------------------华丽的分隔线---------------- SELECT tb.*,to_char(PLANSTART, 'yyyy-mm-dd') KG_PLANDATE,to_char(PLANEND, 'yyyy-mm-dd') JG_PLANDATE FROM table(DMJS_GetDWSSPRJ('cy9tb')) tb------------------华丽的分隔线---------------- create table DEP(DEPID      number(10) not null,DEPNAME    varchar2(256),UPPERDEPID number(10));INSERT INTO DEP(DEPID, DEPNAME, UPPERDEPID) VALUES (0, '总经办', null); INSERT INTO DEP(DEPID, DEPNAME, UPPERDEPID) VALUES (1, '开发部', 0); INSERT INTO DEP(DEPID, DEPNAME, UPPERDEPID) VALUES (2, '测试部', 0); INSERT INTO DEP(DEPID, DEPNAME, UPPERDEPID) VALUES (3, 'Sever开发部', 1); INSERT INTO DEP(DEPID, DEPNAME, UPPERDEPID) VALUES (4, 'Client开发部', 1);INSERT INTO DEP(DEPID, DEPNAME, UPPERDEPID) VALUES (5, 'TA测试部', 2); INSERT INTO DEP(DEPID, DEPNAME, UPPERDEPID) VALUES (6, '项目测试部', 2);SELECT RPAD( ' ', 2*(LEVEL-1), '-' ) || DEPNAME "DEPNAME",CONNECT_BY_ROOT DEPNAME "ROOT",CONNECT_BY_ISLEAF "ISLEAF",LEVEL ,SYS_CONNECT_BY_PATH(DEPNAME, '/') "PATH"FROM DEPSTART WITH UPPERDEPID IS NULLCONNECT BY PRIOR DEPID = UPPERDEPID;------------------华丽的分隔线---------------- --列累加WITH T AS(SELECT 1 ID, '一车队' NAME, '2013-10-01' MONTH, 10 AMOUNT FROM DUAL   UNION ALL SELECT 2, '一车队', '2013-10-02', 20 FROM DUAL   UNION ALL SELECT 3, '一车队', '2013-10-03', 40 FROM DUAL   UNION ALL SELECT 4, '二车队', '2013-10-01', 30 FROM DUAL   UNION ALL SELECT 5, '二车队', '2013-10-02', 20 FROM DUAL   UNION ALL SELECT 6, '二车队', '2013-10-03', 50 FROM DUAL)SELECT NAME, MONTH, AMOUNT, SUM(AMOUNT) OVER(PARTITION BY NAME ORDER BY MONTH) ACC FROM T------------------华丽的分隔线---------------- --有则更新,无则添加MERGE INTO ORDER_INFO_ALL A--源表USING (SELECT A.ORDER_CODE, A.ITEM_NAME, P.ITEM_PRICE FROM ORDER_INFO A LEFT JOIN ORDER_INFO_PRICE P ON P.ORDER_CODE=A.ORDER_CODE) P--目标表ON(P.ORDER_CODE=A.ORDER_CODE)WHEN MATCHED THEN UPDATE SET A.ITEM_PRICE=P.ITEM_PRICEWHEN NOT MATCHED THEN INSERT (ORDER_CODE, ITEM_NAME, ITEM_PRICE) VALUES (P.ORDER_CODE, P.ITEM_NAME, P.ITEM_PRICE)------------------华丽的分隔线---------------- CREATE TABLE T_INFO(T_PERSON_ID NUMBER,T_PERSON_NAME VARCHAR(20),T_TYPE_ID VARCHAR(200));INSERT INTO T_INFO SELECT 1, '张三', '1,2' FROM DUAL UNION ALL SELECT 2, '李四', '1' FROM DUAL/*结果2        李四        011        张三        021        张三        01把      1        张三        01,02这条记录分成1        张三        021        张三        01*/create table T_INFO_Test as select * from T_INFO where rownum <1;declarel_i number;l_p number;l_times number;l_str varchar2(10);beginfor x in (select * from T_INFO) loopl_i := 1;l_times := length(x.T_TYPE_ID) - length(replace(x.T_TYPE_ID, ',', '')) + 1;for y in 1 .. l_times loopl_p := l_i;l_i := instr(x.T_TYPE_ID || ',', ',', l_i) + 1;l_str := substr(x.T_TYPE_ID, l_p, l_i - l_p - 1);insert into T_INFO_Test values (x.T_PERSON_ID, x.T_PERSON_NAME, l_str);end loop;end loop;commit;end;select * from T_INFO_Test;或select T_PERSON_ID,T_PERSON_NAME,regexp_substr(T_TYPE_ID, '[^,]+', 1, level) T_TYPE_IDfrom t_infoconnect by level <= regexp_count(T_TYPE_ID, ',') + 1and T_PERSON_ID = prior T_PERSON_IDand prior dbms_random.value is not null;或     select distinct T_PERSON_ID,T_PERSON_NAME,regexp_substr(T_TYPE_ID, '[^,]+', 1, level) T_TYPE_IDfrom t_infoconnect by level <= regexp_count(T_TYPE_ID, ',') + 1;------------------华丽的分隔线(剔除表数据)---------------- SELECT EVENTID,PRJNM,CASE WHEN ID IS NOT NULL THEN PARENTNO ELSE '0' END PARENTNO,PRJCODEFROM(SELECT * FROM table(DMJS_GetDWSSPRJ('cy9tb'))  A where eventid not in (select xmmc from dmjs_xmhtxx)) A LEFT JOIN(SELECT a.EVENTID ID,a.PARENTNO PID FROM table(DMJS_GetDWSSPRJ('cy9tb')) A  where eventid not in (select xmmc from dmjs_xmhtxx)) B ON A.PARENTNO = B.ID--------------------------------------------------------------------------------with t as(SELECT  to_char(sysdate,'yyyy')-3+LEVEL D_YEAR  from dual CONNECT BY LEVEL<=5)select D_year, to_char(LEVEL)||'月份' M_Month  from t CONNECT BY LEVEL<=12  and d_year=prior d_year and prior dbms_random.value is not null;with t as(SELECT  to_char(sysdate,'yyyy')-3+LEVEL D_YEAR  from dual CONNECT BY LEVEL<=10 )SELECT D_YEAR, REGEXP_SUBSTR('01;02;03;04;05;06;07;08;09;10;11;12', '[^;]+', 1, LEVEL)||'月份'  M_Month FROM t CONNECT BY LEVEL<=12 and d_year=prior d_year and prior dbms_random.value is not null;--------------------------查找最近的日期----------------------------------------------select t.*,row_number() over(partition by well_id order by STATUS_DATE desc) rn from CD_WELL_STATUS_HISTORY t--------------------------ListAgg行转列-----------------------------------------------with temp as(select '中国' nation,'北京' city  from dual union allselect '中国','上海' from dual union allselect '中国','武汉' from dual union allselect '美国','华盛顿' from dual union allselect '美国','纽约' from dual union allselect '日本','东京' from dual )--select nation,listagg(city,',')  within group (order by city desc) city  from temp group by nation ;select nation,listagg(city,',')  within group(order by city) over (partition by nation) city  from temp;

Oracle 工作语句记录相关推荐

  1. Oracle常用语句记录

    交集/差集/合集select * from tb_aintersectminusunion allselect * from tb_b条件分支 decode()例如:搜索条件没有手机就查座机 默认查手 ...

  2. oracle去掉重复记录语句

    oracle去掉重复记录语句 比如现在有一人员表 (表名:peosons) 若想将姓名.身份证号.住址这三个字段完全相同的记录查询出来 select p1.*   from persons  p1,p ...

  3. ORACLE工作原理小结

    ORACLE工作原理1-连接 我们从一个用户请求开始讲,ORACLE的完整的工作机制是怎样的,首先一个用户进程发出一个连接请求,如果使用的是主机命名或者是本地服务命中的主机名使用的是机器名(非IP地址 ...

  4. oracle 带有变量的语句_【成都校区】Oracle SQL语句之常见优化方法总结

    本帖出自于黑马程序员成都中心,更多资源可关注微信公众号 1.SQL语句尽量用大写的: 因为oracle总是先解析SQL语句,把小写的字母转换成大写的再执行. 2.使用表的别名: 当在SQL语句中连接多 ...

  5. Oracle sql语句简单优化

    一.操作符优化: 1.IN 操作符 用IN写出来的SQL的优点是比较容易写及清晰易懂,这比较适合现代软件开发的风格.但是用IN的SQL性能总是比较低的,从ORACLE执行的步骤来分析用IN的SQL与不 ...

  6. oracle用升序索引去降序查询,Oracle工作札记

    Oracle工作笔记 oracle_hint_使用说明示例 1. /*+ALL_ROWS*/ 表明对语句块选择基于开销的优化方法,并获得最佳吞吐量,使资源消耗最小化. 例如: SELECT /*+AL ...

  7. oracle人语句大全,oracle查询语句大全

    oracle分页查询的时候,不能使用limit,所以只能这样 1.  select * from table_name where   rownum>begin   and   rownum   ...

  8. Oracle SQL语句性能优化方法大全

    下面列举一些工作中常常会碰到的Oracle的SQL语句优化方法: 1.SQL语句尽量用大写的: 因为oracle总是先解析SQL语句,把小写的字母转换成大写的再执行. 2.选择最有效率的表名顺序(只在 ...

  9. Oracle SQL语句执行流程与顺序原理详解

    以前读的文章,保存到本地了,忘记来源了,分享一下,本地存着怕丢了 Oracle SQL语句执行流程与顺序原理详解 第一步:客户端把语句发给服务器端执行 当我们在客户端执行SQL语句时,客户端会把这条S ...

最新文章

  1. 3D打印「心脏」体外存活超6个月,心肌组织带有规律性搏动,来自中科院清华...
  2. 【转载】:C# string 特殊的引用类型
  3. ubuntu 升级nodejs 和 npm
  4. IntelliJ IDEA 安装问题解决
  5. Kubernetes tutorial - K8S 官方入门教程
  6. 计算机类自主招生推荐信,自主招生推荐信范文:中国人民大学自主招生推荐信...
  7. CLIP还能做视频字幕任务!腾讯清华提出CLIP4Caption,ACM MM2021挑战赛第二名!
  8. 6G 研发启动,普通人如何借势加薪?
  9. 数据库中外连接的三种形式(左连接,右连接,全连接)
  10. 图层重命名快捷键_实际操作,在PS中如何批量给图层重命名并导出
  11. Xmind 8思维导图使用方法
  12. Java-茴香豆研究(一)
  13. 我的第一篇论文诞生的故事
  14. ubuntu14.04安装Kile
  15. VC浏览器相关的学习(六)(IDispEventImpl包装的主要方法)
  16. 【Task02】Numpy组队学习—随机抽样
  17. Windows下安装VMware
  18. 怎么看cf的服务器在哪个文件夹,cf录像在哪个文件夹
  19. 程序设计基础c语言邹启明,【基础强化】2020年秋季学期程序设计C语言项目顺利结课...
  20. stm32检测串口空闲的原理

热门文章

  1. VMware虚拟机Ubuntu系统如何连接网络
  2. 用Notepad++ 宏功能 将json数据转换为EXCEL
  3. python对excel操作简书_python Excel 写
  4. 基于Java的亚马逊“手机”评论爬虫的情感分类分析
  5. 没有计算机网络地址怎么办,教大家电脑没有ip地址mac地址怎么办
  6. 大数据平台docker一键搭建
  7. ant pro-table点击表格行高亮显示
  8. SUSE 搭建 虚拟专用网络 (pptpd )_linux
  9. 发票查验API,批量查验发票真伪
  10. 薪火相传 点亮企业数智化舞台—— CDEC2021中国数字智能生态大会西安收官