数据表TB(发布日期、存款利率、贷款利率)存有银行分布的历次一年期贷款利率。例如:
(非真实数据):

为方便获得每天的一年期银行贷款利率,我们设计了如下数据表TD(起始日期,截止日期,存款利率、贷款利率),存放各日期段内的银行贷款利率。数据表TD的数据记录示意如下:

现在需要写SQL,根据TB表生成TD表。

--建表--
CREATE TABLE TB (发布日期 date,存款利率 VARCHAR2(10),贷款利率 VARCHAR2(10)
);
INSERT INTO TB VALUES(DATE'2010-01-01','8%','10%');
INSERT INTO TB VALUES(DATE'2011-01-01','5%','7%');
INSERT INTO TB VALUES(DATE'2012-01-01','5%','7%');
INSERT INTO TB VALUES(DATE'2012-10-31','5%','6%');
INSERT INTO TB VALUES(DATE'2013-01-01','5%','6%');
INSERT INTO TB VALUES(DATE'2013-03-31','8%','9%');
INSERT INTO TB VALUES(DATE'2013-09-01','8%','10%');
INSERT INTO TB VALUES(DATE'2014-01-01','8%','9%');
INSERT INTO TB VALUES(DATE'2015-01-01','6%','9%');
COMMIT;--利用位移函数--
SELECT REPLACE(TO_CHAR(发布日期,'YYYY-MM-DD'),'2010-01-01','0001-01-01') AS 起始日期,TO_CHAR(NVL(LEAD(发布日期-1,1) OVER(ORDER BY 发布日期),DATE'9999-12-31'),'YYYY-MM-DD') AS 截止日期,存款利率,贷款利率
FROM ( SELECT 发布日期,存款利率,贷款利率,存款利率 || 贷款利率 A,LAG(存款利率 || 贷款利率,1) OVER (ORDER BY 发布日期) BFROM TB ) T
WHERE T.A <> T.B OR T.B IS NULL;

【查找各日期段内的银行贷款利率问题】相关推荐

  1. Oracle计算某日期段内排除周六日之后的天数(请假,工作日,日期型)

    因为本人不是主要从事Oracle等大数据操作方向,所以对于SQL语句了解并不专业,本文主要用于记录自己的使用心得,以及为广大网友提供思路,如果不喜欢我的解析和讲解可以直接跳过,拿走你觉得有用的SQL. ...

  2. mysql给定一段日期,获取日期范围内的每一天

    需求:做管理后台报表时,给定一个日期范围,查出库中这个日期范围内的每一天数据,库中不存在的日期对应数据要补0 方法一: 获取每一天的sql语句: SELECTdate_add( date_sub(#{ ...

  3. php 日期获取周几,【php智能课表】选取某个日期段的周几,获取周几对应的日期...

    详细内容 最近在做课程表的项目里用到了这个,有个日期段,选择好周几之后,想获取在这个日期段内选中的星期对应的日期,如下图,代码如下 function getDateByWeek($data) { $s ...

  4. php根据周 星期实现课表,【php智能课表】选取某个日期段的周几,获取周几对应的日期...

    详细内容 最近在做课程表的项目里用到了这个,有个日期段,选择好周几之后,想获取在这个日期段内选中的星期对应的日期,如下图,代码如下 function getDateByWeek($data) { $s ...

  5. java获取下周一整周的日期_获取Java中日期范围内的所有星期五

    我最近遇到了一个任务,我必须在一个日期范围内获得所有星期五.我写了一小段代码,很惊讶看到一些奇怪的行为. 以下是我的代码: public class Friday { public static vo ...

  6. 对于数据给定范围sql取数_SQL Server中的报表–根据给定日期范围内提取的数据创建图表

    对于数据给定范围sql取数 介绍 ( Introduction ) I recently heard from a lady from overseas who wanted to find a qu ...

  7. 日期计算excel_在Excel中计算日期范围内的项目

    日期计算excel If you have a list on your Excel worksheet, and a date in each row, you can use a formula ...

  8. mysql 日期截止,MySQL查询以开始日期和结束日期计算日期范围内的天数

    要计算日期范围内的天数,您需要使用来查找日期之间的差额DATEDIFF(). 让我们首先创建一个表:mysql> create table DemoTable730 ( StartDate da ...

  9. JMP跳转指令的指令长度、直接转移与间接转移、段内跳转与段间跳转

    原文链接:https://blog.csdn.net/liuchuo/article/details/51990669 指令长度=操作码的长度+操作数地址的长度 1.段内跳转 JMP指令占1个字节. ...

最新文章

  1. live555点播服务器流程深入分析(一)
  2. Linux下l2tp客户端xl2tpd的安装配置
  3. Spring配置多数据源错误总结
  4. 读取缓存行的伪共享问题
  5. C++对C的加强之 “实用性”增加
  6. 笔试题 - 阶乘问题
  7. 捍卫军人的尊严(武汉548公交车一幕)
  8. 帝国cms文章内容tags关键词设置调用方法以及tags静态化
  9. k8s使用kube-router网络插件并监控流量状态 1
  10. 在使用Navicat for MySQL 出现 异常“You have an error in your SQL syntax......“
  11. js调用数科阅读器_多种方式实现JS调用后台方法进行数据交互
  12. 迷你聊天室_简介:聊天机器人与我们的第一个迷你课程
  13. AES16位密钥加密解密
  14. C语言 execve()函数使用方法
  15. js去掉字符串第一位和最后一位
  16. Linux用RPM安装vsftpd,Linux通过RPM方式安装vsftpd
  17. STL 常用容器(1)--string
  18. LCM5369 降压控制器 P2P替代TPS536C9
  19. 使用计算机的弊端,不可忽视的伤害 用电视接电脑弊端揭露
  20. 串级PID 位置环+速度环

热门文章

  1. 后疫情时代,打造15分钟交通圈
  2. 【LEAP模型】能源环境发展及碳排放建模预测及不确定性分析
  3. Cortex-M系列:错误异常
  4. 大数据行业就业指南:三大方向 十大职位
  5. Poj 3255(dijkstra求次短路)
  6. (第二章)HDMI基本工作原理
  7. 七段显示器显示整数C语言答案,C语言程序设计试卷(含答案)(7页)-原创力文档...
  8. 某同步总线的时钟频率为100MHz,宽度为32位,地址/数据线复用,每传输一个地址或者数据就占用一个时钟周期。该总线支持猝发传输方式,则一次“主存写”总线事务传输128位数据所需的时间至少是
  9. 计算机音乐制作旋律教学,电脑音乐制作走进课堂-520吉他网
  10. 服装设计师如何进行市场调研?