2
I`m Schreiben auf SQL Server 2012 in dieser SQL-FunktionWie Nacheilfunktion in SQL Server 2008
;With Quote as (
SELECT SID,SHEET,Code, Date, Data,
LAG(Data) OVER(ORDER BY Date) As LastMonthData
FROM RMQ_DATA WHERE [SHEET] IN(0)
)
SELECT [Quote].[SID], Quote.DATE,Quote.DATA,Quote.SHEET, Quote.CODE,
CASE
WHEN ISNULL(LastMonthData, 0) = 0 THEN null
ELSE (LastMonthData/Data) * 100
END As Quote,
RMQ_SUBCAT.TARGET_CODE, RMQ_SUBCAT.RMQ_SUBCAT, RMQ_CAT.RMQ_CAT_NAME,
RMQ_CAT.ENABLED
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 '2015/01/01' and '2015/11/01'
aber in der ersten Zeile
With Quote as (
SELECT SID,SHEET,Code, Date, Data,
LAG(Data) OVER(ORDER BY DATE)
** LAG (Data) I verwenden habe einen Fehler. So kenne ich nicht LAG() Funktion, wie in SQL Server 2008 zu verwenden.
Jeder kann mir helfen?
wenn ich Ihre Funktion zu verwenden, i'm bekommen Error. Sie haben eine Idee, wie kann ich es beheben –
@ekremtapan Es gab einen Fehler. Bitte überprüfe die Änderung, die ich gemacht habe. –
danke für deine Unterstützung;) –