找到那些没有禁止条件的id-s

时间:2014-08-13 14:01:52

标签: sql subquery exists dense-rank

我有一些更容易的""条件,但这是我的联盟。 所以我加入后有一张桌子......

A  B    C
1  x  2013.01
1  y  2013.02
1  z  2013.03
2  x  2013.02
2  x  2013.05
2  y  2013.06
2  z  2013.08
2  z  2013.09
3  y  2013.02
3  z  2013.03
3  x  2013.04

所以我需要那些存在z的id-s,但之前没有x存在。

  

所以结果只有3因为z存在且x之前没有出口。

1 个答案:

答案 0 :(得分:1)

select *
from Table1 t1 
     left join Table1 t2 ON t1.A = t2.A and t2.B = 'x'
where t1.B = 'z'
    and ( t2.C >= t1.C or t2.A is null );

看到它在sqlfiddle

中正常工作