如何比较SQL中的行

时间:2014-04-08 06:22:37

标签: sql compare row query-optimization record

我有一张包含大量记录的表格。它按ID和值排序。

ID  Value
1     5
1     7
1     9
1     12
2     5
2     6
2     7
2     8
2     9
3     1
3     2
3     5

我想表明ID有2条记录,而行i和i的值是1> 2。 在满足此条件的表中,ID列返回:

ID    value
1      12
3      5

我使用以下查询。

Select * 
from TABLE1  As A 
where  Exists  (Select distinct ID from TABLE1 as B where B.ID=A.ID
    and A.Value < B.Value and (A.Value+2) <(Select min(Value) from TABLE1 as C where C.Value>A.Value and C.ID=A.ID ))    

它运行得非常慢。我想优化这个查询。

0 个答案:

没有答案