Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Funzioni SQL Lead e Lag dal codice C#

Esamina il progetto MoreLinq (su github):http://morelinq.github.io

Lì, Lead e Lag sono implementati come estensioni:

public static IEnumerable<TResult> Lag<TSource, TResult>(
    this IEnumerable<TSource> source,
    int offset,
    TSource defaultLagValue,
    Func<TSource, TSource, TResult> resultSelector
)

riferimento:https://morelinq.github.io/2.0/ref /api/html/M_MoreLinq_MoreEnumerable_Lag__2_1.htm

EDIT:questo è solo Linq to Objects. Quindi, quando applicato a un'origine dati SQL, recupera tutte le righe e quindi esegue il calcolo all'esterno del database. Questo non è ciò che si aspetta l'OP.

I risultati della ricerca dicono "no , non è possibile" per gli articoli 1,2,3 e 4: