Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Menentukan satu atau beberapa variabel rentang dan koleksi yang akan dikueri.
Sintaksis
From element [ As type ] In collection [ _ ]
[, element2 [ As type2 ] In collection2 [, ... ] ]
Bagian
| Istilah | Definisi |
|---|---|
element |
Dibutuhkan.
Variabel rentang yang digunakan untuk melakukan iterasi melalui elemen koleksi. Variabel rentang digunakan untuk merujuk ke setiap anggota collection saat kueri berulang melalui collection. Harus merupakan jenis yang dapat dijumlahkan. |
type |
Fakultatif. Jenis element. Jika tidak type ditentukan, jenis element disimpulkan dari collection. |
collection |
Dibutuhkan. Mengacu pada koleksi yang akan dikueri. Harus merupakan jenis yang dapat dijumlahkan. |
Komentar
Klausa From digunakan untuk mengidentifikasi data sumber untuk kueri dan variabel yang digunakan untuk merujuk ke elemen dari kumpulan sumber. Variabel ini disebut variabel rentang. Klausa From diperlukan untuk kueri, kecuali ketika Aggregate klausul digunakan untuk mengidentifikasi kueri yang hanya mengembalikan hasil agregat. Untuk informasi selengkapnya, lihat Klausul Agregat.
Anda dapat menentukan beberapa From klausa dalam kueri untuk mengidentifikasi beberapa koleksi yang akan digabungkan. Ketika beberapa koleksi ditentukan, koleksi tersebut diulang secara independen, atau Anda dapat menggabungkannya jika terkait. Anda dapat menggabungkan koleksi secara implisit dengan menggunakan Select klausa, atau secara eksplisit dengan menggunakan Join klausa atau Group Join . Sebagai alternatif, Anda dapat menentukan beberapa variabel rentang dan koleksi dalam satu From klausa, dengan setiap variabel rentang terkait dan koleksi yang dipisahkan dari yang lain dengan koma. Contoh kode berikut menunjukkan kedua opsi sintaks untuk From klausa.
' 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
Klausa From menentukan cakupan kueri, yang mirip dengan cakupan perulangan For . Oleh karena itu, setiap element variabel rentang dalam cakupan kueri harus memiliki nama yang unik. Karena Anda dapat menentukan beberapa From klausa untuk kueri, klausul berikutnya From dapat merujuk ke variabel rentang dalam From klausa, atau klausul tersebut dapat merujuk ke variabel rentang dalam klausa sebelumnya From . Misalnya, contoh berikut menunjukkan klausa berlapis From di mana koleksi dalam klausa kedua didasarkan pada properti variabel rentang dalam klausa pertama.
Dim allOrders = From cust In GetCustomerList()
From ord In cust.Orders
Select ord
Setiap From klausa dapat diikuti oleh kombinasi klausul kueri tambahan untuk menyempurnakan kueri. Anda bisa menyempurnakan kueri dengan cara berikut:
Gabungkan beberapa koleksi secara implisit dengan menggunakan
Fromklausa danSelect, atau secara eksplisit dengan menggunakanJoinklausa atauGroup Join.Gunakan klausa
Whereuntuk memfilter hasil kueri.Urutkan hasil dengan menggunakan
Order Byklausa.Kelompokkan hasil serupa bersama-sama dengan menggunakan
Group Byklausul .AggregateGunakan klausa untuk mengidentifikasi fungsi agregat untuk mengevaluasi seluruh hasil kueri.LetGunakan klausul untuk memperkenalkan variabel iterasi yang nilainya ditentukan oleh ekspresi alih-alih koleksi.DistinctGunakan klausa untuk mengabaikan hasil kueri duplikat.Identifikasi bagian dari hasil yang akan dikembalikan dengan menggunakan
Skipklausa , ,TakeSkip While, danTake While.
Contoh
Ekspresi kueri berikut menggunakan klausul From untuk mendeklarasikan variabel cust rentang untuk setiap Customer objek dalam customers koleksi. Klausul Where menggunakan variabel rentang untuk membatasi output kepada pelanggan dari wilayah yang ditentukan. Perulangan For Each menampilkan nama perusahaan untuk setiap pelanggan dalam hasil kueri.
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
Lihat juga
- Pertanyaan
- Pengenalan LINQ di Visual Basic
- Untuk masing-masing... Pernyataan Berikutnya
- Untuk...Pernyataan Selanjutnya
- Pilih Klausa
- Klausa Where
- Klausul Agregat
- Klausul Yang Berbeda
- Klausul Gabungan
- Klausul Gabungan Grup
- Urutan berdasarkan Klausul
- Biarkan Klausul
- Lewati Klausul
- Pilih Klausul
- Lewati Sementara Klausul
- Klausul Ambil Sementara