• redcn2004 (4/19/2014)


    when c0=1 and a0=b0 then print

    when c0=1 and c1=1 and a0=b0 and a1=b1 then print

    when c1=1 and a1=b1 then print

    when c1=1 and c2=1 and a1=b1 and a2=b2 then print

    ....

    when C Prefix colunm =1 and A Prefix = B Prefix then print

    And my english is not very good, so :hehe:

    Look at these code samples using the CASE statement:

    SELECT * FROM (

    SELECT

    TT.id ,TT.A0 ,TT.A1 ,TT.A2 ,TT.b0

    ,TT.b1 ,TT.b2 ,TT.C0 ,TT.C1 ,TT.C2

    ,CASE

    WHEN TT.C0 = 1 AND (TT.A0 = TT.b0) THEN 1

    WHEN TT.C1 = 1 AND (TT.A1 = TT.b1) THEN 1

    WHEN TT.C2 = 1 AND (TT.A2 = TT.b2) THEN 1

    ELSE 0

    END AS SHOW_FLAG

    FROM T TT

    ) AS X WHERE X.SHOW_FLAG = 1;

    GO

    SELECT * FROM (

    SELECT

    TT.id ,TT.A0 ,TT.A1 ,TT.A2 ,TT.b0

    ,TT.b1 ,TT.b2 ,TT.C0 ,TT.C1 ,TT.C2

    ,CASE

    WHEN TT.C0 = 1 AND (TT.A0 <> TT.b0) THEN 0

    WHEN TT.C1 = 1 AND (TT.A1 <> TT.b1) THEN 0

    WHEN TT.C2 = 1 AND (TT.A2 <> TT.b2) THEN 0

    ELSE 1

    END AS SHOW_FLAG

    FROM T TT

    ) AS X WHERE X.SHOW_FLAG = 1;

    GO