Comment : rechercher la valeur minimale dans une séquence numérique
Utilisez l'opérateur Min pour retourner la valeur minimale d'une séquence de valeurs numériques.
Exemple 1
L'exemple suivant recherche le prix unitaire le plus bas parmi les produits.
Si vous exécutez cette requête sur l'exemple de base de données Northwind, vous obtenez le résultat suivant : 2.5000
.
System.Nullable<Decimal> lowestUnitPrice =
(from prod in db.Products
select prod.UnitPrice)
.Min();
Console.WriteLine(lowestUnitPrice);
Dim lowestUnitPrice = Aggregate prod In db.Products _
Into Min(prod.UnitPrice)
Console.WriteLine(lowestUnitPrice)
Exemple 2
L'exemple suivant recherche le montant de fret le plus bas parmi les commandes.
Si vous exécutez cette requête sur l'exemple de base de données Northwind, vous obtenez le résultat suivant : 0.0200
.
System.Nullable<Decimal> lowestFreight =
(from ord in db.Orders
select ord.Freight)
.Min();
Console.WriteLine(lowestFreight);
Dim lowestFreight = Aggregate ord In db.Orders _
Into Min(ord.Freight)
Console.WriteLine(lowestFreight)
Exemple 3
L'exemple suivant utilise Min pour trouver les Products
qui ont le prix unitaire le plus bas dans chaque catégorie. La sortie est classée par catégorie.
var minQuery =
from prod in db.Products
group prod by prod.CategoryID into grouping
select new
{
grouping.Key,
LeastExpensiveProducts =
from prod2 in grouping
where prod2.UnitPrice == grouping.Min(prod3 =>
prod3.UnitPrice)
select prod2
};
foreach (var grp in minQuery)
{
Console.WriteLine(grp.Key);
foreach (var listing in grp.LeastExpensiveProducts)
{
Console.WriteLine(listing.ProductName);
}
}
Dim minQuery = From prod In db.Products() _
Group prod By prod.CategoryID Into grouping = Group _
Select CategoryID, LeastExpensiveProducts = _
From prod2 In grouping _
Where prod2.UnitPrice = grouping.Min(Function(prod3) _
prod3.UnitPrice)
For Each grp In minQuery
Console.WriteLine(grp.CategoryID)
For Each listing In grp.LeastExpensiveProducts
Console.WriteLine(listing.ProductName)
Next
Next
Si vous exécutez la requête précédente sur l'exemple de base de données Northwind, les résultats se présenteront comme suit :
1
Guaraná Fantástica
2
Aniseed Syrup
3
Teatime Chocolate Biscuits
4
Geitost
5
Filo Mix
6
Tourtière
7
Longlife Tofu
8
Konbu