SQL Server 2008 R2.Differenza tra valori in righe consecutive per ID univoci
Devo trovare la differenza tra righe consecutive basate su un ID comune e univoco.
Data:
AccountNumber ValueDate CustomerName Amount Difference
1 06/01/2014 Customer Name 1 -3436.184178
2 06/03/2014 Customer Name 2 -154.5 -51.5
2 06/15/2014 Customer Name 2 -103
3 06/02/2014 Customer Name 3 -45289.44
4 06/20/2014 Customer Name 4 -4907.52 -1116.43
4 06/25/2014 Customer Name 4 -3791.09 -3791.09
4 06/30/2014 Customer Name 4 -3302.19
La colonna delle differenze è ciò che sto cercando di generare. Devo trovare la differenza tra le righe consecutive SOLO SE:
C'è più di 1 riga per un particolare numero di conto.
sono riuscito a rimuovere le righe con 1 valore/AccountNumber [righe 1 e 4 in questo caso]
ho ancora bisogno di trovare la differenza tra [fila - fila + 1] vidi un un paio di risposte su Stack overflow ma non sembrano applicabili a questo scenario.
È necessario dettare cosa significa "righe consecutive". In che modo SQL Server sa che -154,5 è arrivato prima del -103? (Inoltre, AccountNumber non è univoco se può avere lo stesso valore in due righe.) –
Le tabelle rappresentano insiemi non ordinati. Quindi, non esiste una "riga consecutiva" a meno che non si disponga esplicitamente di una colonna con l'ordinamento, in genere un ID o una data di creazione. I tuoi dati non hanno tale colonna, quindi non ha "riga consecutiva". –
Modificato per includere ValueDate come punto di riferimento per la consecutività [non è sicuro se sia una parola] – GVashist