1
Answer

LAG FUNCTION in SQL Server 2008

Ekrem Tapan

Ekrem Tapan

8y
375
1
I`m writing on SQL Server 2012 in this SQL function
 
  1. ;With Quote as   
  2. (  
  3.     SELECT   
  4.         SID, SHEET, Code, Date, Data,   
  5.         LAG(Data) OVER(ORDER BY DateAs LastMonthData   
  6.     FROM   
  7.         RMQ_DATA   
  8.     WHERE   
  9.         [SHEET] IN ('0''1')  
  10. )  
  11. SELECT   
  12.     [Quote].[SID], Quote.DATE, Quote.DATA, Quote.SHEET, Quote.CODE,  
  13.     CASE   
  14.        WHEN ISNULL(LastMonthData, 0) = 0 THEN null   
  15.        ELSE (Data-LastMonthData)/LastMonthData  
  16.     END As Quote  
  17. FROM   
  18.     Quote  
  19. Left outer Join   
  20.     RMQ_SUBCAT on  Quote.CODE =RMQ_SUBCAT.TARGET_CODE  
  21. left outer join   
  22.     RMQ_CAT on RMQ_SUBCAT.TARGET_SID=RMQ_CAT.SID  
  23. where   
  24.     RMQ_CAT.ENABLED='Y' and   
  25.     Quote.DATE between '2014/01/01' and '2016/12/01' 

but on the first line

  1. ;With Quote as (  
  2. SELECT SID,SHEET,Code, Date, Data,   
  3.        LAG(Data) OVER(ORDER BY DateAs LastMonthData   
  4.        FROM RMQ_DATA WHERE [SHEET] IN('0','1')) 

LAG(Data) I have an error. So I don't know LAG() function how to use in SQL Server 2008.

How can I solve this trouble ?

 
Answers (1)