oracle - 如何使用间隔 1 分钟在两个日期之间将时间序列数据生成到 Oracle PL/SQL 中的表中?
问题描述
我是这个话题的新手。在我的设置中,Oracle 12c 标准版数据库和 PL/SQL Developer。
我有一个具有以下结构的表:
int id;
timestamp time_mon;
double price;
我需要将数据插入到一个表中,该表生成的时间段为 02.01.2018 00:00 - 02.01.2019 00:00,间隔为 5 分钟。我无法应付这项任务。请帮助我并显示 SQL 代码示例。
解决方案
假设您的意思是 02.01.2018 = 1 月 2 日,这可能是一种方式:
insert into yourTable(id, time_mon, price)
select ??? as id, -- to be completed
date '2018-01-02' + interval '5' minute * (level -1) as time_mon,
??? as price -- to be completed
from dual
connect by date '2018-01-02' + interval '5' minute * (level -1) <= date '2019-01-02'
推荐阅读
- python - 有效计算序列之间的重叠
- microsoft-graph-api - MS Graph Odata 过滤器,如 SQL where x in (a,b,c)
- javascript - 浏览器地理位置 API 不抛出错误或遵守超时
- python - df.apply() 但跳过第一行
- swift - 我无法在 xcode 的日期选择器中设置时间
- python - AttributeError:“str”对象在不和谐机器人中没有属性“get”
- json - Json 路径 - 如何仅从具有“请求”并给定“标题”:“subject_2”参数的部分获取“id”?
- python - 我可以使用数组作为索引对 numpy 数组进行切片吗?
- .net-core - Stryker.NET 从项目的根目录支持 SLN 文件
- python - 取消显示 Matplotlib 图