2013-03-20 1 views
0

У меня есть таблица MyTable, которая имеет упорядоченный столбец A (первичный ключ)Сравните последующие строки в SQLite с JOINS

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

Спасибо, я всегда искал JOINS и совершенно забыл о коррелированных запросов. Благодаря! – wnstnsmth

Смежные вопросы