From Tümcesi (Visual Basic)
Bir veya daha fazla aralık değişkeni ve sorgu için bir koleksiyon belirtir.
Sözdizimi
From element [ As type ] In collection [ _ ]
[, element2 [ As type2 ] In collection2 [, ... ] ]
Parça
Süre | Tanım |
---|---|
element |
Gerekli. Koleksiyonun öğeleri arasında yineleme yapmak için kullanılan bir aralık değişkeni. Bir aralık değişkeni, sorgu aracılığıyla yinelendiğinde öğesinin collection her üyesine başvurmak collection için kullanılır. Numaralandırılabilir bir tür olmalıdır. |
type |
isteğe bağlı. türü.element Belirtilmezse type , türü element türünden collection çıkarılır. |
collection |
Gerekli. Sorgulanacak koleksiyona başvurur. Numaralandırılabilir bir tür olmalıdır. |
Açıklamalar
From
yan tümcesi, bir sorgunun kaynak verilerini ve kaynak koleksiyondaki bir öğeye başvurmak için kullanılan değişkenleri tanımlamak için kullanılır. Bu değişkenler aralık değişkenleri olarak adlandırılır. From
Yan tümcesi sorgu için gereklidir, ancak Aggregate
yan tümcesi yalnızca toplu sonuçları döndüren bir sorguyu tanımlamak için kullanılır. Daha fazla bilgi için bkz . Aggregate Yan Tümcesi.
Birleştirilecek birden çok From
koleksiyonu tanımlamak için sorguda birden çok yan tümce belirtebilirsiniz. Birden çok koleksiyon belirtildiğinde, bunlar bağımsız olarak yinelenir veya ilişkiliyse bunlara katılabilirsiniz. Yan tümcesini Select
kullanarak veya veya Group Join
yan tümcelerini kullanarak Join
koleksiyonları örtük olarak birleştirebilirsiniz. Alternatif olarak, tek From
bir yan tümcede birden çok aralık değişkeni ve koleksiyon belirtebilirsiniz; ilgili her aralık değişkeni ve koleksiyonu diğerlerinden virgülle ayrılmıştır. Aşağıdaki kod örneği yan tümcesi From
için her iki söz dizimi seçeneğini gösterir.
' Multiple From clauses in a query.
Dim result = From var1 In collection1, var2 In collection2
' Equivalent syntax with a single From clause.
Dim result2 = From var1 In collection1
From var2 In collection2
From
yan tümcesi, bir döngünün kapsamına benzer bir sorgunun For
kapsamını tanımlar. Bu nedenle, sorgu kapsamındaki her element
aralık değişkeninin benzersiz bir adı olmalıdır. Sorgu için birden çok From
yan tümce belirtebildiğiniz için, sonraki From
yan tümceler yan tümcesindeki From
aralık değişkenlerine veya önceki From
yan tümcedeki aralık değişkenlerine başvurabilir. Örneğin, aşağıdaki örnekte ikinci yan tümcedeki koleksiyonun birinci yan tümcedeki aralık değişkeninin özelliğini temel aldığı iç içe From
bir yan tümce gösterilmektedir.
Dim allOrders = From cust In GetCustomerList()
From ord In cust.Orders
Select ord
Her From
yan tümceyi, sorguyu daraltmak için ek sorgu yan tümcelerinin herhangi bir bileşimi takip edebilir. Sorguyu aşağıdaki yollarla daraltabilirsiniz:
ve
Select
yan tümcelerini kullanarak veya veyaGroup Join
yan tümcelerini kullanarakFrom
Join
birden çok koleksiyonu örtük olarak birleştirin.Where
Sorgu sonucunu filtrelemek için yan tümcesini kullanın.Yan tümcesini
Order By
kullanarak sonucu sıralayın.yan tümcesini kullanarak benzer sonuçları birlikte gruplandırın
Group By
.Sorgu sonucunun
Aggregate
tamamı için değerlendirilecek toplama işlevlerini tanımlamak için yan tümcesini kullanın.Let
Değeri koleksiyon yerine bir ifade tarafından belirlenen bir yineleme değişkeni eklemek için yan tümcesini kullanın.Yinelenen sorgu sonuçlarını yoksaymak için yan tümcesini
Distinct
kullanın., ,
Take
Skip While
veTake While
yan tümcelerini kullanarak döndürülecek sonucunSkip
bölümlerini tanımlayın.
Örnek
Aşağıdaki sorgu ifadesi, koleksiyondaki her Customer
nesne için bir aralık değişkeni cust
bildirmek üzere bir From
yan tümcesi customers
kullanır. Where
yan tümcesi, belirtilen bölgedeki müşterilerle çıkışı kısıtlamak için aralık değişkenini kullanır. döngü, For Each
sorgu sonucundaki her müşterinin şirket adını görüntüler.
Sub DisplayCustomersForRegion(ByVal customers As List(Of Customer),
ByVal region As String)
Dim customersForRegion = From cust In customers
Where cust.Region = region
For Each cust In customersForRegion
Console.WriteLine(cust.CompanyName)
Next
End Sub
Ayrıca bkz.
- Sorgular
- Visual Basic'te LINQ'e Giriş
- For Each...Next Deyimi
- For...Next Deyimi
- Select Yan Tümcesi
- Where Yan Tümcesi
- Aggregate Yan Tümcesi
- Distinct Yan Tümcesi
- Join Yan Tümcesi
- Group Join Yan Tümcesi
- Order By Yan Tümcesi
- Let Yan Tümcesi
- Skip Yan Tümcesi
- Take Yan Tümcesi
- Skip While Yan Tümcesi
- Take While Yan Tümcesi