Maison > Article > base de données > Comment sélectionner les enregistrements avec la valeur minimale dans un champ spécifique dans MySQL ?
Lorsque vous travaillez avec des tables de base de données, vous pouvez rencontrer le besoin de récupérer des enregistrements dans lesquels un champ particulier contient la valeur minimale. Dans MySQL, cela peut être réalisé en utilisant une combinaison des instructions SELECT et WHERE.
Une idée fausse courante est d'utiliser la fonction MIN() de manière incorrecte dans l'instruction SELECT. L'exemple suivant, fourni dans la question d'origine, ne produira pas le résultat souhaité :
<code class="sql">SELECT * FROM pieces WHERE MIN(price)</code>
Cette requête calculera le prix minimum pour tous les enregistrements et ne renverra pas les enregistrements individuels avec le prix minimum.
Solution :
Pour sélectionner correctement les enregistrements avec la valeur minimale dans un champ spécifique, vous pouvez utiliser la requête suivante :
<code class="sql">SELECT * FROM pieces WHERE price = ( SELECT MIN(price) FROM pieces )</code>
Explication :
Exemple :
Considérez le tableau suivant :
id | name | price |
---|---|---|
1 | Item 1 | 10 |
2 | Item 2 | 5 |
3 | Item 3 | 10 |
4 | Item 4 | 15 |
L'exécution de la requête ci-dessus renverra l'enregistrement suivant :
id | name | price |
---|---|---|
2 | Item 2 | 5 |
Cet enregistrement a le prix minimum (5) parmi tous les enregistrements de la table des pièces.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!