我有一张包含大量记录的表格。它按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 ))
它运行得非常慢。我想优化这个查询。