I`m writing on SQL Server 2012 in this SQL function
- ;With Quote as
- (
- SELECT
- SID, SHEET, Code, Date, Data,
- LAG(Data) OVER(ORDER BY Date) As LastMonthData
- FROM
- RMQ_DATA
- WHERE
- [SHEET] IN ('0', '1')
- )
- SELECT
- [Quote].[SID], Quote.DATE, Quote.DATA, Quote.SHEET, Quote.CODE,
- CASE
- WHEN ISNULL(LastMonthData, 0) = 0 THEN null
- ELSE (Data-LastMonthData)/LastMonthData
- END As Quote
- FROM
- Quote
- Left outer Join
- RMQ_SUBCAT on Quote.CODE =RMQ_SUBCAT.TARGET_CODE
- left outer join
- RMQ_CAT on RMQ_SUBCAT.TARGET_SID=RMQ_CAT.SID
- where
- RMQ_CAT.ENABLED='Y' and
- Quote.DATE between '2014/01/01' and '2016/12/01'
but on the first line
- ;With Quote as (
- SELECT SID,SHEET,Code, Date, Data,
- LAG(Data) OVER(ORDER BY Date) As LastMonthData
- 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 ?

Bhuvanesh MohankumarPosted May 21, 2016, 6:10 AM