2

順序付けられた列A(主キーなし)を持つテーブルMyTableがあります

A
____
2
3
4
10
13
14
20

このテーブルをそれ自体と比較したいので、このようなものがあります

T1.A  T2.A
________
2     3
3     4
4     10
10    13
13    14
14    20
20    null

T1とT2はMyTableのエイリアスです。

では、WITH ASなどを使用せずに、通常のJOINを使用して、各行を次の行と比較するにはどうすればよいですか?これは、SQLiteにWITH-AS句がないためです。

4

1 に答える 1

4

これには、相関サブクエリを使用します。

select t1.a,
       (select t2.A from t t2 where t2.A > t1.A order by t2.A limit 1
       ) as NextA
from t t1
于 2013-03-20T13:50:27.467 に答える