![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
ORACLE
聚散离合
这个作者很懒,什么都没留下…
展开
-
ORACLE循环中使用序列
在批量生成数据时,使用的Nextval报错原创 2022-07-20 21:33:26 · 509 阅读 · 1 评论 -
分组查询最晚一条数据(ORACLE)
现有客户表,交费表,需查询每个存在交费记录客户的最后一笔交费信息这里提供两种方式注:客户不会在同一时间有两条交费--查询客户名称,最后一笔交费时间,以及最后一笔交费金额WITH--客户表:客户id,客户名称a AS(SELECT 'a1' aid, '张三' aname FROM dualUNION ALL SELECT 'a2', '李四' FROM dualUNION ALL SELECT 'a3', '王五' FROM dual),--交费表:交费ID,客户ID,交费原创 2021-03-11 11:25:13 · 2012 阅读 · 0 评论 -
ORACLE将查询字段指定为某种类型
SELECT CAST('张三' AS VARCHAR2(20)) nameFROM dual;一般来说在查询时很少有用到这种语句,但是使用CREATE TABLE ... AS SELECT ...语句的时候这个就很好用了--建表CREATE TABLE hugetemp.test01 ASSELECT '张三' name FROM dual;--正常插入数据INSERT INTO hugetemp.test01SELECT '李四' FROM dual;--插入报错INSER.原创 2021-01-22 15:31:12 · 1556 阅读 · 0 评论 -
Oracle取最大/最小值函数
Oracle取最大/最小值函数SELECT greatest(1,3,5,7,9) 最大值, least(1,3,5,7,9) 最小值 FROM dual;原创 2021-01-07 14:46:46 · 6813 阅读 · 0 评论 -
外连接从表过滤
1、使用left join时从表的过滤WITH a AS(SELECT 'A' aid FROM dualUNION ALLSELECT 'B' FROM dualUNION ALLSELECT 'C' FROM dualUNION ALLSELECT 'D' FROM dualUNION ALLSELECT 'E' FROM dual),b AS(SELECT 'A...原创 2020-04-13 11:55:08 · 281 阅读 · 0 评论 -
交叉连接(CROSS JOIN)的实际应用
一次偶然的机会,使用到了万年不用的交叉连接(CROSS JOIN)业务场景如下:1、存在多个运营商,每个运营商下面都有各种类型的设备,不同运营商的设备不完全相同;2、任何设备有且仅有两种用途‘订购’、‘置换’3、现在要统计发生了‘订购’、‘置换’操作运营商的订购数和置换数思路:先用交叉连接把所有存在订购和置换的运营商和设备组合查询出来再过滤掉无数据的组合各运营商各设...原创 2020-03-20 11:49:11 · 2912 阅读 · 1 评论 -
ORACLE会话以及SQL执行信息查询
select t.BLOCKING_SESSION, t.SQL_ID, t.SID, t.SERIAL#, t.MACHINE, t.PROGRAM, t.ACTION, t.LOGON_TIME "登录时间", trunc((sysdate - t.LOGON_TIME) * 24...原创 2020-01-09 14:43:53 · 1657 阅读 · 0 评论 -
树形结构数据汇总查询解决方案+优化求助
最近遇到一个地区数据汇总的问题,地区下的地址呈树形结构,(简化结构)如A市下有B、C区,B区下有D、E街道。先要查询所有地区的人数(包括子区域),如A的人数=直属A的人数+B的人数+C的人数+D的人数+E的人数。C的人数=直属C的人数。地址结构如图:地区直属人数如下查询结果如下实现如下WITH a AS(SELECT 'A' 地址, 10 总人数, ...原创 2019-11-13 11:04:57 · 872 阅读 · 0 评论 -
ORACLE弱类型游标及带参数动态SQL
DECLARE TYPE customername IS RECORD( name VARCHAR2(100) ); TYPE MyRefCur IS REF CURSOR; vRefCur MyRefCur; --vtemp customers_cs%rowtype; vtemp customername; vSqlText...原创 2019-08-19 17:52:45 · 298 阅读 · 0 评论 -
Oracle常用字符串操作
参考:一、oracle操作字符串:拼接、替换、截取、查找;总体来说这篇文章还是写的很清晰的,'和''就不要过多纠结了二、oracle中的trim函数使用介绍--字符串去空格--输出:a b c;SELECT TRIM(' a b c ') || ';' FROM dual;SELECT TRIM(BOTH FROM ' a b c ') || ';' ...原创 2018-08-07 17:06:40 · 5362 阅读 · 0 评论