sql >> Database teknologi >  >> RDS >> Oracle

ABS() Funktion i Oracle

I Oracle er ABS() funktion returnerer den absolutte værdi af sit argument.

Den absolutte værdi er den ikke-negative værdi af et reelt tal uden hensyn til dets fortegn. Den beskriver afstanden fra nul, som et tal er på tallinjen, uden at tage retningen i betragtning.

Syntaks

ABS() funktions syntaks ser sådan ud:

ABS(n)

Hvor n kan være enhver numerisk datatype eller enhver ikke-numerisk datatype, der implicit kan konverteres til en numerisk datatype.

Funktionen returnerer den samme datatype som argumentets numeriske datatype.

Eksempel

Her er et eksempel til demonstration:

SELECT ABS(-7)
FROM DUAL;

Resultat:

   ABS(-7) 
__________ 
         7 

Den absolutte værdi af -7 er 7 .

Det er præcis det samme resultat, som vi ville få, hvis vi havde bestået en positiv 7 :

SELECT 
    ABS(7),
    ABS(-7)
FROM DUAL;

Resultat:

   ABS(7)    ABS(-7) 
_________ __________ 
        7          7 

Nul-værdier

Sender null til ABS() returnerer null :

SET NULL 'null';

SELECT ABS(null)
FROM DUAL;

Resultat:

   ABS(NULL) 
____________ 
        null 

Som standard returnerer SQLcl og SQL*Plus et tomt mellemrum, når der opstår en null-værdi som et resultat af en SQL SELECT udmelding.

Du kan dog bruge SET NULL for at angive en anden streng, der skal returneres. Her specificerede jeg, at strengen null skal returneres.

Forkert antal argumenter

Kalder ABS() uden at sende nogen argumenter returnerer en fejl:

SELECT ABS()
FROM DUAL;

Resultat:

Error starting at line : 1 in command -
SELECT ABS()
FROM DUAL
Error at Command Line : 1 Column : 8
Error report -
SQL Error: ORA-00909: invalid number of arguments
00909. 00000 -  "invalid number of arguments"
*Cause:    
*Action:

Og at sende det forkerte antal argumenter resulterer i en fejl:

SELECT ABS(1, 2)
FROM DUAL;

Resultat:

Error starting at line : 1 in command -
SELECT ABS(1, 2)
FROM DUAL
Error at Command Line : 1 Column : 8
Error report -
SQL Error: ORA-00909: invalid number of arguments
00909. 00000 -  "invalid number of arguments"
*Cause:    
*Action:

  1. hvor sikre er BOB udarbejdede erklæringer

  2. Hentning af returværdien fra JDBC MSSQL

  3. Få liste over tabeller med eller uden primær nøglebegrænsning i alle databaser fra SQL Server Instance - SQL Server / TSQL Tutorial Del 61

  4. MySQL/MariaDB - bestil efter indvendig underforespørgsel