redcn2004 (4/19/2014)
when c0=1 and a0=b0 then printwhen 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