【发布时间】:2023-03-22 18:58:01
【问题描述】:
我有两个表,其中包含看似不相关的数据,并希望用另一个表的值更新一列。例如
t文章
ID Weight orderId count
57 1000 10 1
1000 500 10 3
2501 1500 10 1
13 725 10 1
758 1000 10 1
...
tPackage
ID Weight orderId
1001 0 10
1002 0 10
1003 0 10
1004 0 10
...
这是插入后的样子:
tPackage
ID Weight orderId
1001 1000 10
1002 500 10
1003 500 10
1004 500 10
1005 1500 10
1006 725 10
1007 1000 10
...
这些包裹没有参考文章,但我每篇文章都有一个包裹,需要为每个包裹分配一篇文章的重量。一篇文章可以出现多次,并且需要为每个单元分配其权重。我总是有确切的包裹数量。
关于我所尝试的,我真诚地不得不说,我对如何尝试这一点完全空白。我必须创建一个临时表来管理这个吗?
【问题讨论】:
-
将 tArticle 与计数表中的计数表相结合>=tally.id 以创建重复项。使用 row_number() over (order by ID,tally.id) 创建一个“新” id - 在临时表或 cte 上执行此操作,无论适合您。直接使用 row_number() 为您的 tPackage 执行相应的 id(按 ID 排序)。加入 newID 并更新。如果您想要更多/更快的答案,请添加到您的问题中创建/插入脚本:)