Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Spécifie une ou plusieurs variables de plage et une collection à interroger.
Syntaxe
From element [ As type ] In collection [ _ ]
[, element2 [ As type2 ] In collection2 [, ... ] ]
Pièces
Terme | Définition |
---|---|
element |
Obligatoire. Variable de plage utilisée pour itérer dans les éléments de la collection. Une variable de plage est utilisée pour faire référence à chaque membre de la collection requête en tant qu’itère au sein de la collection requête . Doit être un type énumérable. |
type |
Optionnel. Type de element . Si aucun n’est type spécifié, le type de element données est déduit de collection . |
collection |
Obligatoire. Fait référence à la collection à interroger. Doit être un type énumérable. |
Remarques
La From
clause est utilisée pour identifier les données sources d’une requête et les variables utilisées pour faire référence à un élément de la collection source. Ces variables sont appelées variables de plage. La From
clause est requise pour une requête, sauf lorsque la Aggregate
clause est utilisée pour identifier une requête qui retourne uniquement les résultats agrégés. Pour plus d’informations, consultez La clause d’agrégation.
Vous pouvez spécifier plusieurs From
clauses dans une requête pour identifier plusieurs collections à joindre. Lorsque plusieurs collections sont spécifiées, elles sont itérées indépendamment, ou vous pouvez les joindre si elles sont associées. Vous pouvez joindre implicitement des collections à l’aide de la Select
clause, ou explicitement à l’aide des Join
ou Group Join
des clauses. En guise d’alternative, vous pouvez spécifier plusieurs variables de plage et collections dans une seule From
clause, avec chaque variable de plage associée et collection séparée des autres par une virgule. L’exemple de code suivant montre les deux options de syntaxe pour la From
clause.
' 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
La From
clause définit l’étendue d’une requête, qui est similaire à l’étendue d’une For
boucle. Par conséquent, chaque element
variable de plage dans l’étendue d’une requête doit avoir un nom unique. Étant donné que vous pouvez spécifier plusieurs From
clauses pour une requête, les clauses suivantes From
peuvent faire référence à des variables de plage dans la From
clause, ou elles peuvent faire référence à des variables de plage dans une clause précédente From
. Par exemple, l’exemple suivant montre une clause imbriquée From
où la collection dans la deuxième clause est basée sur une propriété de la variable de plage dans la première clause.
Dim allOrders = From cust In GetCustomerList()
From ord In cust.Orders
Select ord
Chaque From
clause peut être suivie de n’importe quelle combinaison de clauses de requête supplémentaires pour affiner la requête. Vous pouvez affiner la requête de la manière suivante :
Combinez implicitement plusieurs collections à l’aide des
From
clauses etSelect
des clauses, ou explicitement à l’aide desJoin
clauses ouGroup Join
.Utilisez la
Where
clause pour filtrer le résultat de la requête.Triez le résultat à l’aide de la
Order By
clause.Regroupez des résultats similaires à l’aide de la
Group By
clause.Utilisez la
Aggregate
clause pour identifier les fonctions d’agrégation à évaluer pour l’ensemble du résultat de la requête.Utilisez la
Let
clause pour introduire une variable d’itération dont la valeur est déterminée par une expression au lieu d’une collection.Utilisez la
Distinct
clause pour ignorer les résultats de requête en double.Identifiez les parties du résultat à retourner à l’aide des
Skip
clauses , ,Take
Skip While
etTake While
.
Exemple :
L’expression de requête suivante utilise une From
clause pour déclarer une variable cust
de plage pour chaque Customer
objet de la customers
collection. La Where
clause utilise la variable de plage pour restreindre la sortie aux clients de la région spécifiée. La For Each
boucle affiche le nom de la société pour chaque client dans le résultat de la requête.
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