根据列中的日期填充代理 Datekey
Posted
技术标签:
【中文标题】根据列中的日期填充代理 Datekey【英文标题】:Populate surrogate Datekey based on Date in a column 【发布时间】:2021-01-06 18:18:11 【问题描述】:我已经创建了一个表
CREATE TABLE myTable(
DateID INT PRIMARY KEY NOT NULL,
myDate DATE)
然后我想使用 SSIS 使用临时表中的数据填充表。问题是我不明白如何根据临时表的传入值生成 DateID。例如: 在 2020-12-12 插入临时表后,我希望我的 DateID 变为 20201212 等等。
我试图用谷歌搜索这个问题,但没有找到与我的案例相关的任何内容。 (但我不否认我做得不好)。我该怎么做?
【问题讨论】:
【参考方案1】:您可以使用持久化计算列:
CREATE TABLE myTable (
DateID AS (YEAR(myDate) * 10000 + MONTH(myDate) * 100 + DAY(myDate)) PERSISTED PRIMARY KEY,
myDate DATE
);
Here 是一个 dbfiddle。
【讨论】:
以上是关于根据列中的日期填充代理 Datekey的主要内容,如果未能解决你的问题,请参考以下文章
在 pandas 中,如何根据一列中的唯一值创建列,然后根据另一列中的值填充它?