2013-03-20 41 views
0

我有了一个有序的列A我想这个表进行比对自身的表MyTable的(没有主键)SQLite中比较后续行使用连接

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子句。

回答

2

为此,使用相关子查询:

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 
+0

谢谢你,我一直在寻找联接和完全忘记了相关查询。谢谢! – wnstnsmth 2013-03-20 18:11:57