Fonctions SQL MIN et MAX

Fonctions SQL MIN et MAX
Que vous travailliez avec ANSI SQL ou d'autres saveurs SQL, vous êtes obligé de rencontrer Min () et Max () fonctionne dans les opérations agrégées. Ce sont quelques-unes des fonctions essentielles pour les tâches simples et les opérations d'agrégation complexes. Cet article explorera ce que fait chaque fonction, sa syntaxe correspondante et des exemples pratiques de quand utiliser ces fonctions. Remarque: Ce tutoriel illustrera comment utiliser ces fonctions dans ANSI SQL, également connu sous le nom de SQL standard. Cependant, ils devraient effectuer des actions similaires même dans d'autres saveurs SQL.

Fonction sql min ()

Commençons par la fonction min (). Cette fonction vous permet de récupérer la plus petite valeur dans un ensemble de valeurs données. Vous pouvez fournir les valeurs d'entrée en tant que colonne numérique ou le résultat d'une expression qui renvoie une valeur numérique.

La fonction min () est une fonction agrégée et renvoie une seule valeur numérique à partir d'une entrée donnée.

La syntaxe de fonction peut être exprimée comme indiqué:

Min (expression)

La fonction accepte un seul argument comme une expression ou un ensemble de colonnes donné.

Prenez l'exemple ci-dessous:

SÉLECTIONNER
Min (x) comme le plus petit
DEPUIS
inné ([100, 102, 2, 233, 11, 12]) comme x;

L'exécution du code ci-dessus doit renvoyer la plus petite valeur du tableau donné.

le plus petit |
--------+
2 |

Fonctions sql max ()

Comme son nom l'indique, la fonction max () vous permet d'obtenir le plus grand nombre dans un ensemble donné de valeurs numériques. De même, vous pouvez transmettre l'ensemble des valeurs comme une colonne numérique ou le résultat d'une expression donnée qui renvoie une valeur numérique.

La syntaxe de fonction est comme indiqué:

Max (expression)

Considérez l'exemple ci-dessous:

SÉLECTIONNER
Max (x) comme le plus grand
DEPUIS
inné ([100, 102, 2, 233, 11, 12]) comme x;

Le code ci-dessus devrait récupérer la valeur la plus importante du tableau donné. Un exemple de sortie est comme indiqué:

le plus grand |
-------+
233 |

Échantillons de données

Utilisez le mieux les données mondiales précises pour illustrer diverses utilisations des fonctions MIN et MAX. Prenez l'exemple de données ci-dessous:

Créer une base de données local_db;
Utilisez local_db;
Créer des bases de données de table (
id int not null identité (1,1) clé primaire,
server_name varchar (50),
server_address varchar (255) pas null,
compression_method varchar (100) par défaut «Aucun»,
size_on_disk float pas nul,
Float de taille_compressée,
total_records int not null
));
Insérer dans des bases de données (server_name, server_address, compression_method, size_on_disk, size_compresmped, total_records)
VALEURS («MySQL», «LocalHost: 3306», «LZ77», 90.66, 40.04, 560000),
(«Redis», «localhost: 6307», «Snappy», 3.55, 998.2, 100000),
('Postgresql', 'LocalHost: 5432', 'PGLZ', 101.2, 98.01, 340000),
(«Elasticsearch», «LocalHost: 9200», «lz4», 333.2, 300.2, 1200000),
(«MongoDB», «LocalHost: 27017», «Snappy», 4.55, 4.10, 620000),
('Apache Cassandra', 'LocalHost: 9042', 'ZSTD', 300.3, 200.12, 10000000);
Sélectionner * dans les bases de données;

Remarque: les données ci-dessus sont purement fictives et ne représente pas les capacités de base de données ou le rapport de compression réels.

Tableau de sortie:

Exemple 1 - Utilisation des fonctions MIN et MAX sur une seule colonne

Nous pouvons utiliser les fonctions min et max sur une colonne de table donnée pour récupérer la plus petite et la plus grande valeur de la colonne, respectivement.

Par exemple, pour obtenir la base de données avec la plus petite taille sur le disque, nous pouvons exécuter la requête en tant que:

SÉLECTIONNER
Min (size_on_disk) en tant que plus petit_size
DEPUIS
Bases de données;

La requête ci-dessus doit renvoyer la plus petite taille de la colonne size_on_disk, comme indiqué dans la sortie ci-dessous:

SmallEst_Size |
-------------+
3.55 |

Pour la plus grande taille, utilisez la fonction maximale:

SÉLECTIONNER
Max (size_on_disk) comme plus grand_size
DEPUIS
Bases de données;

Résultat:

plus grand_size |
------------+
333.2 |

Exemple 2 - Utilisation des fonctions Min et Max avec groupe par

Nous pouvons également inclure d'autres colonnes utilisant le groupe par fonction lorsque vous travaillez avec une fonction agrégée.

Par exemple, pour afficher le server_name:

SÉLECTIONNER
Max (size_on_disk) comme plus grand_size,
nom du serveur
DEPUIS
Bases de données
Groupe par server_name;

La clause Group By est essentielle lorsque vous catégorisez les données en partitions spécifiques et trouvez une valeur minimale ou maximale de chaque division.

Exemple 3 - Utilisation de Min et Max dans la même requête

Nous pouvons également utiliser deux fonctions agrégées dans la même requête, comme indiqué dans la sortie ci-dessous:

SÉLECTIONNER
Max (size_on_disk) comme plus grand_size,
Min (size_on_disk) en tant que plus petit_size
DEPUIS
Bases de données;

Un exemple de sortie est comme indiqué:

plus grand_size | SmallEst_Size |
------------+-------------+
333.2 | 3.55 |

Exemple 4 - combinant les fonctions min et max avec la clause

L'exemple ci-dessous montre comment utiliser les fonctions min et max () pour filtrer les résultats en utilisant la clause.

SELECT Server_name, max (total_records) comme le plus grand
From Databases Group by Server_name ayant max (total_records) = 100000;

Sortie résultante:

server_name | plus grand |
-----------+-------+
Redis | 100000 |

Fermeture

Dans cet article, nous avons largement exploré comment utiliser les fonctions min et max () dans SQL. Nous avons également discuté des exemples pratiques d'utilisation de ces deux fonctions dans vos applications.