2011-12-12 55 views
-2

给定一个表格T1,其中100行,A,B,C,D为列。有条件比较

我需要检查C和D是否相等,如果A和B都是1.是否有人可以为我提供这个SQL代码?

+0

PL确保是1的A和B是DIFF行不是在同一行,如果你给代码是有帮助的,“专家pl可以帮你解决上述问题 有一个表T1有100行A,B,C,D 4列 需要比较当A = 1并且B = 1并且同时,A(ie)的行等于1并且行的B(ie)等于1,它们的C和D列应该相等。 提及Pl/Sql查询。 “ ” – gyrous

+0

“如果我们给你代码”(它实际上不是),它可能对你有帮助,但肯定对我们没有帮助,请告诉我们你已经尝试了什么,以及你的实际情况如何 –

+0

select *来自T1,其中A = B组由c组成; – gyrous

回答

0

如果它是一个SQL那么也许这就是你需要:

select * 
from T1 
where (A=1 and B=1 and C=D) or (a<>1) or (b<>1) 

但如果它是PLSQL则:

DECLARE 
    cursor c is 
    select A,B,C,D from T1; 
BEGIN 
    FOR r IN c LOOP 
    IF r.A = 1 AND r.B = 1 THEN 
     IF r.C = r.D THEN 
      dbms_output.put_line('YES!!!'); 
     ELSE 
      dbms_output.put_line('Oh no ...'); 
     END IF; 
    END IF; 
    END LOOP; 
END;