Create table test123 (
CustId int,
[Level] int,
RowNum int,
USAFlag bit
)
insert into test123(CustId,[Level],RowNum,USAFlag)values
(101,1,1,0),
(102,2,1,0),
(102,2,2,1),
(103,3,1,0),
(103,3,2,1),
(103,3,3,0),
(104,4,1,1),
(104,4,2,0),
(104,4,3,0),
(104,4,4,1),
(105,2,1,1),
(105,2,2,0),
(106,2,1,0),
(106,2,2,0),
(107,3,1,0),
(107,3,2,0),
(107,3,3,1),
(108,1,1,1)
CustID USARootLeaf
101 ONlyONeLevel_NonUSA
102 Leaf_USA
103 Root_Leaf_NonUSA
104 Root_Leaf_USA
105 Root_USA
106 Root_Leaf_NonUSA
107 Leaf_USA
108 OnlyOneLvel_USA
ロジックに基づいて派生列を必要とします。レベルが1の場合、USARootLeaf値がUSAFlag値
に基づいてOnlyOneLvel_USAまたはOnlyOneLvel_NonUSAでなければなりませんレベルが> 1である場合、USARootLeaf値があるべきUSAFlagのRoot_Leaf_USA、Root_Leaf_NonUSA、Root_USA、Leaf_USA分に基づいて(レベル)とmax(レベル)値が真/偽
それが葉であるとき、それは明確ではない...とするときRoot_Leafは... – FLICKER
レベル> 1場合は、ロジックの詳細を与えることはできますか? – Jason