共用方式為


Skip 子句 (Visual Basic)

略過集合中指定的項目數,然後傳回其餘項目。

Skip count

組件

  • count
    必要項。 數值或運算式,表示要連續略過的項目數。

備註

Skip 子句會使查詢略過結果清單開頭的項目並傳回剩餘項目。 略過的項目數是由 count 參數識別。

您可以在查詢的任何區段搭配使用 Skip 子句和 Take 子句,以傳回某個範圍的資料。 若要這樣做,請傳遞所需範圍中第一個項目的索引給 Skip 子句,並傳遞範圍的大小給 Take 子句。

當您在查詢中使用 Skip 子句時,可能還需要確保結果的傳回順序可讓 Skip 子句略過所要的結果。 如需排序查詢結果的詳細資訊,請參閱 Order By 子句 (Visual Basic)

您可以使用 SkipWhile 子句,指定只略過符合所指定條件的特定項目。

範例

下列程式碼範例會搭配使用 Skip 子句和 Take 子句,以頁面為單位傳回查詢資料。 GetCustomers 函式會使用 Skip 子句一直略過清單中的客戶直到遇到所提供的起始索引值,然後使用 Take 子句自該索引值起傳回一頁的客戶。

Public Sub PagingSample()
  Dim pageNumber As Integer = 0
  Dim pageSize As Integer = 10

  Dim customersPage = GetCustomers(pageNumber * pageSize, pageSize)

  Do While customersPage IsNot Nothing
    Console.WriteLine(vbCrLf & "Page: " & pageNumber + 1 & vbCrLf)

    For Each cust In customersPage
      Console.WriteLine(cust.CustomerID & ", " & cust.CompanyName)
    Next

    Console.WriteLine(vbCrLf)

    pageNumber += 1
    customersPage = GetCustomers(pageNumber * pageSize, pageSize)
  Loop 
End Sub 

Public Function GetCustomers(ByVal startIndex As Integer,
                             ByVal pageSize As Integer) As List(Of Customer)

  Dim customers = GetCustomerList()

  Dim returnCustomers = From cust In customers
                        Skip startIndex Take pageSize

  If returnCustomers.Count = 0 Then Return Nothing 

  Return returnCustomers
End Function

請參閱

參考

Select 子句 (Visual Basic)

From 子句 (Visual Basic)

Order By 子句 (Visual Basic)

Skip While 子句 (Visual Basic)

Take 子句 (Visual Basic)

概念

Visual Basic 中的 LINQ 簡介

其他資源

查詢 (Visual Basic)