代码改变世界

随笔分类 - Oracle SQL

小知识:Oracle中的层次查询

2021-05-31 19:02 by AlfredZhao, 137 阅读, 收藏, 编辑
摘要: 使用Oracle中的start with .. connect by prior ..语句可以轻松实现。 下面通过scott用户下的emp来做演示,使用自己的一个19c测试环境,结果发现默认并没有scott用户及其测试表,我们需要使用自带脚本添加: @?/rdbms/admin/utlsampl.s 阅读全文

使用SQL计算宝宝每次吃奶的时间间隔 - Part3:保障数据安全

2019-12-26 22:47 by AlfredZhao, 696 阅读, 收藏, 编辑
摘要: 目前程序从功能上其实已经完全满足客户(当然我这里的客户都是指媳妇儿^_^)需求,具体可参考: "使用SQL计算宝宝每次吃奶的时间间隔 Part1:分析函数的使用" "使用SQL计算宝宝每次吃奶的时间间隔 Part2:提升程序易用性" 那么本篇 "使用SQL计算宝宝每次吃奶的时间间隔 Part3:保障 阅读全文

使用SQL计算宝宝每次吃奶的时间间隔 - Part2:提升程序易用性

2019-12-16 01:10 by AlfredZhao, 833 阅读, 收藏, 编辑
摘要: 本文是《 "使用SQL计算宝宝每次吃奶的时间间隔" 》的续篇,因为我工作繁忙,时常不能及时帮助媳妇儿记录,为了让不懂数据库的媳妇儿也可以自己用手机熟练操作。我继续做了一些修正和封装: 1.给媳妇儿的手机下载一个terminal终端软件termius,实现只需打开app就可以连接到环境; 2.跟媳妇儿 阅读全文

使用SQL计算宝宝每次吃奶的时间间隔 - Part1:分析函数的使用

2019-12-13 17:07 by AlfredZhao, 1198 阅读, 收藏, 编辑
摘要: 需求: 媳妇儿最近担心宝宝的吃奶时间不够规律,网上说是正常平均3小时喂奶一次,让我记录下每次的吃奶时间,分析下实际是否偏差很大,好在下次去医院复查时反馈给医生。 此外,还要注意有时候哭闹要吃奶,而实际只吃了两口便不吃了。这种情况要特殊标记下,如果不算这种情况的话,分析看是否正常。 环境: Oracl 阅读全文

使用dbms_profiler收集存储过程每步执行时间

2019-03-07 10:34 by AlfredZhao, 671 阅读, 收藏, 编辑
摘要: 最近和优化团队的专家学到一个很有意义的内置包:dbms_profiler,专门用于分析Oracle存储过程中的各段代码的时间开销情况,从而快速找到性能瓶颈的步骤。 "1.sys创建dbms_profiler" "2.创建profiler用户,对应表和序列,赋权" "3.sys为表和序列创建publi 阅读全文

使用SQL语句如何实现条件判断

2018-09-28 23:15 by AlfredZhao, 25547 阅读, 收藏, 编辑
摘要: 客户需求是咨询如何用SQL结合decode函数实现条件判断,比如当某一列数值大于500,对应类型“大于500”;当某一列数值小于500,对应类型“小于500”。 实际decode函数无法实现这个功能,实现要用到case when,为此我构造一个简单的示例来直观演示: 测试包含case when的SQ 阅读全文

如何统计一段时间内但不包含周六日的所有日期

2018-01-10 09:06 by AlfredZhao, 654 阅读, 收藏, 编辑
摘要: 环境:Oracle 11g 客户咨询问题:统计一段时间内,但是把周六日排除,怎么写SQL? 我对SQL不擅长,特意请教SQL专家勇哥给出建议。在此一并感谢勇哥的解答,本文主要是详细记录下这个问题备忘。 答案: select dt, to_char(dt, 'day', 'nls_date_langu 阅读全文

Oracle存储过程中游标的简单使用

2017-06-07 17:46 by AlfredZhao, 28239 阅读, 收藏, 编辑
摘要: 存储过程中查询语句如何返回多行结果? 我们知道,如果存储过程中查询语句有多行结果输出,会报错:ORA 01422: exact fetch returns more than requested number of rows 若想让存储过程中的查询语句返回多行结果不报错,则需要使用游标来实现。 本例 阅读全文

Oracle PL/SQL随堂笔记总结

2015-01-04 22:00 by AlfredZhao, 2808 阅读, 收藏, 编辑
摘要: 1.pl/sql编程2.存储过程3.函数4.触发器5.包6.pl/sql基础 -定义并使用变量7.pl/sql的进阶8.oracle的视图1.pl/sql编程 1.理解oracle的pl/sql的概念 2.掌握pl/sql编程技术(过程、函数、触发器) pl/sql是标准sql语句的扩展 简介 1.... 阅读全文

Oracle存储过程获取YYYY-MM-DD的时间格式

2014-12-18 20:23 by AlfredZhao, 9091 阅读, 收藏, 编辑
摘要: 环境:Oracle 10g,11g问题重现:PL/SQL中命令窗口下,发现存储过程得到的时间格式不符合预期要求。SQL> select sysdate from dual;SYSDATE-----------2014-12-18Executed in 0 secondsSQL> set server... 阅读全文