sql - SQL 从包含表名、列名和值列映射的数据表中将数据插入到多个表中,可以在源中更改
问题描述
我很困惑。这看起来可行,但不确定如何实现。
我有一个看起来像这样的数据表。数据源有时会交换源文件中的列。
Data
IN column table_sheet y w value
col1 Route Summary 2021 Week 1 a
col2 CNG/Diesel Summary 2021 Week 1 5
col3 Freq Summary 2021 Week 1 B
col4 Weekly Miles Summary 2021 Week 1 6
col1 CNG/Diesel Summary 2021 Week 2 1
col2 Freq Summary 2021 Week 3 1
col3 Weekly Miles Summary 2021 Week 4 1
col1 Load Days_ON 2021 Week 1 L210224-25048
col2 Load_id Days_ON 2021 Week 1 L210224-25048
col3 cost Days_ON 2021 Week 1 263.64
col1 Distance CCD 2021 Week 2 781.62
col2 Code CCD 2021 Week 2 CL
col3 Name CCD 2021 Week 2 Squre
col4 Cost CCD 2021 Week 2 1800
源文件是一个包含多个工作表(项目的表名称)的电子表格,每周填充一次并且是增量的。源文件列映射可以更改,如表摘要中一样,源中的所有列(excel 源文件列索引)都已更改。目标表已经存在所有可能的列名。SQL 代码必须读取表名并将数据相应地映射到源表。
I want to populate the below tables using the data table above like this.
Summary Route CNG/Diesel Freq Weekly Miles y W
a 5 B 6 2021 Week 1
1 2021 Week 2
1 2021 Week 3
1 2021 Week 4
Days_ON
Load LoaD_id cost y W
L210224-25048 L210224-25048 263.64 2021 Week 1
CCD
Distance Code Name Cost y W
781.62 CL Squre 1800 2021 Week 1
添加 - 该解决方案可能适用于一行,但不适用于同一周的多行。
Data
IN column table_sheet y w value h1_ind
col1 Route Summary 2021 Week 1 a 2
col2 CNG/Diesel Summary 2021 Week 1 5 3
col3 Freq Summary 2021 Week 1 B 4
col4 Weekly Miles Summary 2021 Week 1 6 5
col1 Route Summary 2021 Week 1 b 2
col2 CNG/Diesel Summary 2021 Week 1 1 3
col3 Freq Summary 2021 Week 1 1 4
col4 Weekly Miles Summary 2021 Week 1 1 5
col1 Route Summary 2021 Week 1 c 2
col2 CNG/Diesel Summary 2021 Week 1 5 3
col3 Freq Summary 2021 Week 1 B 4
col4 Weekly Miles Summary 2021 Week 1 6 5
col1 Route Summary 2021 Week 1 d 2
col2 CNG/Diesel Summary 2021 Week 1 1 3
col3 Freq Summary 2021 Week 1 1 4
col4 Weekly Miles Summary 2021 Week 1 1 5
Desired output:
table_sheet y w Route CNG/Diesel Freq Weekly Miles
Summary 2021 Week 1 a 5 B 6
Summary 2021 Week 1 b 1 1 1
Summary 2021 Week 1 c 5 B 6
Summary 2021 Week 1 d 1 1 1
如果可能的话,SQL unpivot 如何提供此输出?我想看看这个。我也想看看我们能不能让勺子工作。请协助。
解决方案
推荐阅读
- ajax - 购物车和结帐页面中增值税金额的 AJAX 更新 - Woocommerce
- julia - Julia REPL 中只允许有限输出的选项是什么?
- java - 我想创建一个方法来删除另一个给定堆栈中的堆栈中的所有元素
- javascript - 我的创建角色命令仅创建一个具有“新角色”名称的角色
- c# - C# 在 foreach 循环中调用函数
- java - 如何使用 Jooq 获取多个级别的一对多嵌套
- r - 直方图 ggplot2
- go - Go循环轮询案例分支中的并发未命中
- ios - iPadOS、SwiftUI、侧边栏(3 列):在 NavigationView 中缺少带有 3 个视图的侧边栏按钮,但只能使用 2 个视图?
- dynamics-crm - 使用 ADF v2 将数据加载到具有多列备用键的 Dyanmic CRM 表中的问题