oracle - 在 Oracle 中,我想创建一个“路由接口”,它根据参数插入到单独的表中
问题描述
我需要找到以下问题的解决方案:应该有一个通用且单一的“接口”,我可以在 insert into 语句中使用,如下所示:insert into INTERFACE (fields) select ...
但是接口后面有许多具有相同结构的表,这应该决定基于值列表(进入字段)将数据放在哪里。这些表现在按范围间隔(每天)进行分区。
我正在考虑拥有一个无法选择的复合分区表,以避免在单个选择查询中混合不同类型的数据,但在其顶部创建视图。在这种情况下,表应该像这样进行分区:按列表字段分区按范围间隔进行分区。但是 oracle 12 不支持这个。
知道如何解决这个问题吗?(我需要一个接口以及为什么我必须单独存储数据是有原因的。)
先感谢您!
解决方案
该INSERT ALL
语法可以帮助根据条件轻松地将数据路由到特定表:
create table interface1(a number, b number);
create table interface2(a number, b number);
insert all
when a <= 1 then
into interface1
else
into interface2
select '1' a, 2 b from dual;
推荐阅读
- odbc - 在 Windows 2019 Datacenter 中连接到 SQL Server
- python - 找不到满足选择要求的版本
- java - 如何更改 JButton 的位置和大小?
- vue.js - 如何在 .js 文件中使用 Vue .env 设置?
- python-3.x - 如何修改 WebKit 上下文菜单?
- node.js - Puppeteer 不会返回来自特定网站的所有请求
- time-complexity - 查找“Hello”输出的最坏情况次数
- javascript - 为什么 Javascript 项目将内置结果检查到 git 中?
- ios - 如何在 UITextField 上按下退格键/删除键
- javascript - 我可以在表格中放置脚本标签吗?