In MariaDB MIN()
ist eine Aggregatfunktion, die den Mindestwert in einem bestimmten Ausdruck zurückgibt.
Syntax
Die Syntax lautet wie folgt:
MIN([DISTINCT] expr)
Beispieldaten
Angenommen, wir haben eine Tabelle mit den folgenden Daten:
SELECT
VendorId,
ProductName,
ProductPrice
FROM Products;
Ergebnis:
+----------+---------------------------------+--------------+ | VendorId | ProductName | ProductPrice | +----------+---------------------------------+--------------+ | 1001 | Left handed screwdriver | 25.99 | | 1001 | Right handed screwdriver | 25.99 | | 1001 | Long Weight (blue) | 14.75 | | 1001 | Long Weight (green) | 11.99 | | 1002 | Sledge Hammer | 33.49 | | 1003 | Chainsaw | 245.00 | | 1003 | Straw Dog Box | 55.99 | | 1004 | Bottomless Coffee Mugs (4 Pack) | 9.99 | +----------+---------------------------------+--------------+
Beispiel
Wir können die folgende Abfrage verwenden, um den Mindestpreis aus dieser Tabelle zu erhalten.
SELECT MIN(ProductPrice)
FROM Products;
Ergebnis:
9.99
In diesem Fall werden Preisinformationen im ProductPrice
gespeichert Spalte, und wir übergeben das als Argument an MIN()
Funktion, die dann das Ergebnis berechnet und zurückgibt.
Gefilterte Ergebnisse
Der MIN()
Die Funktion arbeitet mit den von der Abfrage zurückgegebenen Zeilen. Wenn Sie also die Ergebnisse filtern, wird die Ausgabe von MIN()
wird das widerspiegeln.
SELECT MIN(ProductPrice)
FROM Products
WHERE VendorId = 1001;
Ergebnis:
11.99
In diesem Fall ist 11,99 der Mindestpreis aller vom angegebenen Anbieter angebotenen Produkte.
Datums-/Uhrzeitdaten
Sie können MIN()
verwenden auf Datums-/Uhrzeitwerten.
Angenommen, wir haben die folgende Tabelle:
SELECT PetName, DOB
FROM Pets;
Ergebnis:
+---------+------------+ | PetName | DOB | +---------+------------+ | Fluffy | 2020-11-20 | | Fetch | 2019-08-16 | | Scratch | 2018-10-01 | | Wag | 2020-03-15 | | Tweet | 2020-11-28 | | Fluffy | 2020-09-17 | | Bark | NULL | | Meow | NULL | +---------+------------+
Wir können MIN()
verwenden um das Mindestgeburtsdatum zu finden (DOB
).
SELECT MIN(DOB)
FROM Pets;
Ergebnis:
2018-10-01
Dies wäre das Geburtsdatum des ältesten Haustieres.
NULL
Werte
Der MIN()
Funktion ignoriert jeden NULL
Werte. In unserer obigen Beispieltabelle enthalten die letzten beiden Zeilen NULL
Werte in ihrem DOB
Spalte, aber sie wurden in unserem MIN()
ignoriert Beispiel.
Charakterdaten
Bei Verwendung mit Zeichendatenspalten MIN()
findet den niedrigsten Wert in der Sortierfolge.
Beispiel:
SELECT MIN(ProductName)
FROM Products;
Ergebnis:
Bottomless Coffee Mugs (4 Pack)
Der DISTINCT
Schlüsselwort
Der DISTINCT
Schlüsselwort kann mit MIN()
verwendet werden Dies führt jedoch zu demselben Ergebnis wie das Weglassen von DISTINCT
. DISTINCT
zulassen Funktion ermöglicht es MariaDB, dem ISO-SQL-Standard zu entsprechen.
Daher können wir Folgendes tun:
SELECT MIN(DISTINCT ProductPrice)
FROM Products;
Ergebnis:
9.99
Aber es hat keinen Einfluss auf die Ergebnisse.
Der DISTINCT
Schlüsselwort kann sehr nützlich sein, wenn es mit anderen Kontexten verwendet wird (z. B. mit dem COUNT()
Funktion), aber es hat keine Bedeutung, wenn es mit MIN()
verwendet wird . Der DISTINCT
Schlüsselwort entfernt Duplikate, aber im Fall von MIN()
es macht keinen Unterschied, weil MIN()
gibt dasselbe Ergebnis zurück, unabhängig davon, wie viele Zeilen denselben Mindestwert aufweisen.
Fensterfunktionen
Der MIN()
Funktion kann in Verbindung mit OVER
verwendet werden -Klausel zum Erstellen einer Fensterfunktion.
Siehe SQL MIN()
Ein Beispiel für Anfänger.