2007-09-28

Skip

Der Select-Operator liefert eine Collection mit Entity-Objekten aus einer Datenbanktabelle. Mit dem Skip-Operator überspringen wir eine beliebige Anzahl Elemente der Resultatliste.

Wir überspringen die ersten 85 Währungen der gesamten Währungsliste.
Als Resultat erwarten wir nur noch eine Liste mit den letzten 20 Einträgen unserer ursprünglichen Währungsliste, die insgesamt 105 Währungen enthält.

Lambda Expression
var qry = _db.Currencies
.Select(cr => cr)
.Skip(85);

SQL-Anweisung
SELECT [t1].[CurrencyCode],
[t1].[Name],
[t1].[ModifiedDate]
FROM (SELECT ROW_NUMBER() OVER
(ORDER BY [t0].[CurrencyCode],
[t0].[Name],
[t0].[ModifiedDate]) AS [ROW_NUMBER],
[t0].[CurrencyCode],
[t0].[Name],
[t0].[ModifiedDate]
FROM [Sales].[Currency] AS [t0]) AS [t1]
WHERE [t1].[ROW_NUMBER] > @p0
-- @p0: Input Int32 (Size = 0; Prec = 0; Scale = 0) [85]
-- Context: SqlProvider(Sql2005) Model: AttributedMetaModel Build: 3.5.20706.1

Resultat
Die SQL-Anweisung mit dem Skip-Operator liefert aus der Datenbanktabelle Currency alle Einträge ab Position 86, im Beispiel die letzten 20 Währungen. Die ersten 85 Entity-Objekte der Resultatliste wurden mit Skip(85) übersprungen.

No comments: