sql >> Database >  >> RDS >> Mysql

MIN() versus LEAST() in MySQL:wat is het verschil?

In MySQL is het verschil tussen de MIN() en LEAST() functies is precies hetzelfde als het verschil tussen de MAX() en GREATEST() functies.

In beide gevallen voeren beide functies een vergelijkbare bewerking uit, maar ze hebben wel een andere syntaxis.

Syntaxis

De syntaxis voor MIN() en LEAST() gaat als volgt:

MIN([DISTINCT] expr) [over_clause]
LEAST(value1,value2,...)

Dus de MIN() functie accepteert de DISTINCT trefwoord en een OVER clausule (en de LEAST() functie niet).

Maar het belangrijkste verschil tussen deze twee functies zit in de argumenten die ze accepteren. Specifiek:

  • MIN() accepteert één argument
  • LEAST() accepteert meerdere argumenten

Dus MIN() wordt meestal gebruikt om de minimumwaarde in een kolom in een database te retourneren. De tabel kan veel rijen bevatten, maar deze functie retourneert degene met de minimumwaarde.

LEAST() aan de andere kant retourneert het het argument met de minimumwaarde uit de lijst met argumenten die eraan zijn doorgegeven. Dus je zou bijvoorbeeld 3 argumenten kunnen doorgeven aan deze functie en het zal degene met de kleinste waarde teruggeven.

Voorbeeld 1 – De MIN() Functie

Hier is een voorbeeld om de MIN() . te demonstreren functie.

SELECT MIN(Population) AS 'Result'
FROM City;

Resultaat:

+--------+
| Result |
+--------+
|     42 |
+--------+

Dit voorbeeld vindt de stad met de kleinste populatie uit de City tafel. De kolom die de bevolking voor elke stad bevat, heet Population .

Het belangrijkste punt van dit voorbeeld is dat er maar één argument aan de functie is geleverd, maar dat er meerdere rijen zijn opgevraagd.

Als u meerdere argumenten probeert door te geven aan de MIN() functie krijgt u een foutmelding.

Voorbeeld 2 – De LEAST() Functie

Hier is een voorbeeld om de LEAST() . te demonstreren functie.

SELECT LEAST(1, 5, 9) AS 'Result';

Resultaat:

+--------+
| Result |
+--------+
|      1 |
+--------+

Dus in dit geval geven we drie argumenten. Elk argument wordt vergeleken met het andere. Dit is in tegenstelling tot het enkele argument dat wordt gegeven aan de MIN() functie.

Als u een enkel argument probeert door te geven aan de LEAST() functie krijgt u een foutmelding.


  1. Toepassing crasht bij installatie met fout sqlite3_exec - Kan synchrone modus =1 (Normaal) niet instellen

  2. MySQL-zelfstudie - De seconden achter Master Value begrijpen

  3. Hoe rijen in SQL Server-tabel in te voegen door de GUI van tabelrijen te bewerken - SQL Server / TSQL-zelfstudie, deel 101

  4. Hoe verander ik het datumformaat van MM/DD/YYYY naar YYYY-MM-DD in PL/SQL?