Utwórz widok SQLite, w którym wiersz zależy od poprzedniego wiersza

Chciałbym utworzyć widok w SQLite, w którym pole w jednym wierszu zależy od wartości pola w poprzednim wierszu. Mógłbym to zrobić w Oracle za pomocąLAG funkcja analityczna, ale nie wiem, jak to zrobić w SQLite.

Na przykład, jeśli moja tabela wyglądała tak:

<code>ITEM        DAY           PRICE
apple       2011-01-07    1.25
orange      2011-01-02    1.00
apple       2011-01-01    1.00
orange      2011-01-03    2.00
apple       2011-01-08    1.00
apple       2011-01-10    1.50
</code>

Chciałbym, żeby mój widok wyglądał jakWHERE item = 'apple':

<code>DAY           PRICE    CHANGE
2011-01-01    1.00     (null)
2011-01-07    1.25     0.25
2011-01-08    2.00     0.75
2011-01-10    1.50     -0.50
</code>

Edytować:

Odpowiednik szukanego przeze mnie zapytania wyglądałby jak w Oracle (nie próbowałem tego, ale myślę, że jest to poprawne):

<code>SELECT day, price, 
       price - LAG( price, 1 ) OVER ( ORDER BY day ) AS change
  FROM mytable
 WHERE item = 'apple'
</code>

questionAnswers(4)

yourAnswerToTheQuestion