博客
关于我
oracle创建日历表,并写入数据
阅读量:395 次
发布时间:2019-03-05

本文共 1481 字,大约阅读时间需要 4 分钟。

创建并填充Oracle日历表的步骤说明

为了创建并填充一个包含日期信息的Oracle表,我们可以按照以下步骤进行操作。以下将详细介绍创建表结构以及数据插入的具体实现方法。

表结构创建首先,我们需要创建一个名为tdate的表,其字段定义如下:

  • dt DATE类型,不允许为空
  • year NUMBER(4),表示年份
  • month VARCHAR2(4),表示月份
  • day VARCHAR2(4),表示日期
  • week VARCHAR2(10),表示星期几的英文名称
  • weeknum VARCHAR2(4),表示ISO标准的星期数
  • xq NUMBER(2),表示当月的第几周
  • qr NUMBER(2),表示当月的第几周
  • bourse_week VARCHAR2(4),表示国际金融市场的标准星期数

数据插入接下来,我们需要将数据插入到该表中。以下是具体的SQL语句:

insert into tdate (t.dt, t.year, t.month, t.day, t.week, t.weeknum, t.xq, t.qr, t.bourse_week)select trunc(everyDay) as dt,       to_char(everyday,'yyyy') as yr,       to_char(everyday,'mm') as mm,       to_char(everyday,'dd') as dd,       to_char(everyday,'dy') as dayofweek,       to_char(everyday,'WW') as weeknum,       to_char(everyday,'IW') as bourse_weekfrom (    select to_date('20170101','yyyymmdd') + level - 1 as everyDay    from dual    connect by level <= (        last_day(to_date('20220101','yyyymmdd')) - to_date('20170101','yyyymmdd') + 1    ));

通过上述SQL语句,我们可以生成从2017年1月1日至2022年1月1日之间的所有日期,并将这些日期插入到tdate表中。每一天的记录都会包含相应的年份、月份、日期、星期几以及多种星期表示方式。

查询示例为了检索特定日期的记录,可以使用以下查询:

SELECT * FROM (    WITH x AS (        SELECT add_months(trunc(sysdate, 'y'), -12) + level - 1 tdate        FROM dual        CONNECT BY level <= (            add_months(trunc(sysdate, 'y'), 12) - trunc(sysdate, 'y')        )    SELECT tdate, to_char(tdate, 'day'), rownum rn    FROM x    WHERE to_char(tdate, 'day') = '星期五') WHERE rn = 20

上述查询将返回所有星期五的日期记录,并根据行数rn=20来筛选特定记录。

通过以上方法,我们可以成功创建并填充一个包含丰富日期信息的Oracle日历表。

转载地址:http://xrdzz.baihongyu.com/

你可能感兴趣的文章
OSPF两个版本:OSPFv3与OSPFv2到底有啥区别?
查看>>
SQL Server 存储过程
查看>>
OSPF在大型网络中的应用:高效路由与可扩展性
查看>>
OSPF太难了,这份OSPF综合实验请每位网络工程师查收,周末弯道超车!
查看>>
OSPF技术入门(第三十四课)
查看>>
OSPF技术连载10:OSPF 缺省路由
查看>>
OSPF技术连载11:OSPF 8种 LSA 类型,6000字总结!
查看>>
OSPF技术连载13:OSPF Hello 间隔和 Dead 间隔
查看>>
OSPF技术连载14:OSPF路由器唯一标识符——Router ID
查看>>
OSPF技术连载15:OSPF 数据包的类型、格式和邻居发现的过程
查看>>
OSPF技术连载16:DR和BDR选举机制,一篇文章搞定!
查看>>
OSPF技术连载17:优化OSPF网络性能利器——被动接口!
查看>>
OSPF技术连载18:OSPF网络类型:非广播、广播、点对多点、点对多点非广播、点对点
查看>>
OSPF技术连载19:深入解析OSPF特殊区域
查看>>
SQL Server 复制 订阅与发布
查看>>
OSPF技术连载20:OSPF 十大LSA类型,太详细了!
查看>>
OSPF技术连载21:OSPF虚链路,现代网络逻辑连接的利器!
查看>>
OSPF技术连载22:OSPF 路径选择 O > O IA > N1 > E1 > N2 > E2
查看>>
OSPF技术连载2:OSPF工作原理、建立邻接关系、路由计算
查看>>
OSPF技术连载5:OSPF 基本配置,含思科、华为、Junifer三厂商配置
查看>>