Necesito calcular la diferencia de una columna entre dos líneas de una tabla, ¿hay alguna manera de hacerlo directamente en SQL? Estoy usando Microsoft SQL Server 2008.¿Hay alguna manera de acceder al valor de "fila anterior" en una instrucción SELECT?
Busco algo como esto:
SELECT value - (previous.value) FROM table
Imaginando que el "anterior" de referencia variable la última fila seleccionada. Por supuesto que con una selección como esta voy a terminar con n-1 filas seleccionadas en una tabla con n filas, eso no es probable, en realidad es exactamente lo que necesito.
¿Es posible de alguna manera?
Bueno, solo agreguemos un comentario útil para los nuevos espectadores. SQL 2012 tiene LAG y LEAD ahora :) Consulte este enlace http://blog.sqlauthority.com/2013/09/22/sql-server-how-to-access-the-previous-row-and-next-row- value-in-select-statement/ –