sql >> Databasteknik >  >> RDS >> PostgreSQL

LEAST() Funktion i PostgreSQL

I PostgreSQL, LEAST() funktion returnerar det minsta värdet från en lista med valfritt antal uttryck.

LEAST() funktion ingår inte i SQL-standarden, men det är ett populärt tillägg som många stora RDBMS stödjer.

Syntax

LEAST(value [, ...])

Detta innebär i princip att vi kan skicka ett eller flera värden till funktionen.

Exempel

Här är ett enkelt exempel att visa:

SELECT LEAST( 5, 2, 9 );

Resultat:

2

Vanlig datatyp

Uttrycken måste alla kunna konverteras till en gemensam datatyp. Resultatet kommer att använda denna typ.

Om uttrycken inte kan konverteras till en vanlig datatyp uppstår ett fel:

SELECT LEAST( 5, 'Two', 9 );

Resultat:

ERROR:  invalid input syntax for type integer: "Two"
LINE 1: SELECT LEAST( 5, 'Two', 9 );
                         ^

Strängar

Det föregående exemplet är inte för att antyda att vi inte kan använda strängar. Det är bara för att visa att vi inte kan konvertera datatyper.

För att demonstrera, här är ett exempel där alla argument är strängar:

SELECT LEAST( 'Cat', 'Dog', 'Aardvark' );

Resultat:

Aardvark

Datum

Här är en jämförelse av datumsträngar:

SELECT LEAST(date '2030-01-01', date '2030-12-31');

Resultat:

2030-01-01

Nullvärden

Nullvärden ignoreras om inte alla uttryck är null . Om alla uttryck är null , sedan null returneras:

\pset null '<null>'
SELECT 
    LEAST( 5, null, 9 ),
    LEAST( null, null, null );

Resultat:

 least | least  
-------+--------
     5 | <null>

Som standard returnerar psql den tomma strängen på null-värden. I den första raden i det här exemplet ställer jag in null-värden för att mata ut <null> så att det gör det lättare för oss att se nollresultatet.

Argument saknas

Anropar LEAST() utan några argument resulterar i ett fel:

SELECT LEAST();

Resultat:

ERROR:  syntax error at or near ")"
LINE 1: SELECT LEAST();
                     ^

Vi kan dock skicka ett argument utan fel:

SELECT LEAST( 1 );

Resultat:

1

  1. Förbättra vår onlinejobbportaldatamodell

  2. De bästa svaren på 5 brännande frågor om COALESCE-funktionen i SQL Server

  3. Hur man överför alla MySQL-databaser från gammal till ny server

  4. Hur fungerar GROUP BY?