我的 SQL 数据库上有表
Code | Ordered | Cut01 | Cut02 | Cut03 | Confirmed
--------------------------------------------------
8832 10 1 1 3 5
8821 12 0 1 2 9
8122 20 10 0 0 10
8901 11 0 8 1 2
我怎样才能为每个分隔行Code
,其中有几个Cuts*
<> 0 并乘以自己,例如:
Code | Ordered | Cut01 | Cut02 | Cut03 | Confirmed
--------------------------------------------------
8832 1 1 0 0 0
8832 1 0 1 0 0
8832 8 0 0 3 5
--------------------------------------------------
8821 1 0 1 0 0
8821 11 0 0 2 9
--------------------------------------------------
8122 20 10 0 0 10
--------------------------------------------------
8901 8 0 8 0 0
8901 3 0 0 1 2
Confirmed = Ordered - Cut01 - Cut02 - Cut03
正如您在结果表中看到的Ordered
,每个代码的总和 = 从第一个表中为此代码排序,它也适用于总和Confirmed
。但是在每一行中,我只有一个Cut
不等于 0 的单行。如何使用 T-SQL 来做到这一点?