-3
A     B
1     2
1     1
1     3
1     4
3     3
3     4
4     5

如何使用 T-SQL 仅选择 B 列值不大于 A 列中下一个更大值的那些行?

例如,如果上表是输入,则输出应如下所示;

A     B
1     2
1     1
3     3
4     5
4

1 回答 1

1
select t1.A, t1.B
  from tbl t1
 where t1.B < isnull((select min(t2.A)
                        from tbl t2
                       where t2.A > t1.A), t1.B+1)
于 2012-10-18T17:31:54.373 回答