我正在寻找创建一个查找表来加入我们现有的一个表。现有表格的结构如下:
Version| CompanyNumber|EffDate |ExpDate |Indicator
------------------------------------------------------
1 | 2 |xx/xx/xxxx|xx/xx/xxxx| 0
2 | 2 |xx/xx/xxxx|xx/xx/xxxx| 1
新表具有此结构,应该如下填充:
ID | Version | Form
---------------------
1 | 1 | 1
2 | 1 | 2
3 | 1 | 3
4 | 2 | 3
我正在努力解决的问题是使用上面示例中的数据填充新表。如果指标为0,我将始终使用1,2和3填充表单。
因此,如果指标为0,我想为每个版本添加表格1,2和3,如果指标为1,我只想添加表格3。
先谢谢
答案 0 :(得分:2)
您可以使用此类查询来执行INSERT
:
INSERT INTO Table2(Version, Form)
SELECT Version, x.v
FROM Table1
INNER JOIN (VALUES (1, 3), (2, 2), (3, 1)) AS x(i, v)
ON IIF(Table1.Indicator = 0, 3, Table1.Indicator) >= x.i
如果Indicator
等于0
,则插入3行,否则只插入1行。
注意:我认为ID
的字段Table2
是IDENTITY
字段。