I Oracle er ATAN()
funktion returnerer arctangens (invers tangent) af sit argument.
Med andre ord returnerer den værdien, hvis tangent er argumentet.
Syntaks
Syntaksen ser sådan ud:
ATAN(n)
Hvor n
kan være i et ubegrænset område.
Eksempel
Her er et eksempel:
SELECT ATAN(0.7)
FROM DUAL;
Resultat:
ATAN(0.7) ____________________________________________ 0.610725964389208616543758876490236093837
Ikke-numerisk argument
Argumentet kan være enhver numerisk datatype eller enhver ikke-numerisk datatype, der implicit kan konverteres til en numerisk datatype.
Her er, hvad der sker, når vi angiver et ikke-numerisk argument, der ikke kan konverteres til en numerisk datatype:
SELECT ATAN('One')
FROM DUAL;
Resultat:
Error starting at line : 1 in command - SELECT ATAN('One') FROM DUAL Error report - ORA-01722: invalid number
Nul-værdier
Sender null
til ATAN()
returnerer null
:
SET NULL 'null';
SELECT ATAN(null)
FROM DUAL;
Resultat:
ATAN(NULL) _____________ null
Som standard returnerer SQLcl og SQL*Plus et tomt mellemrum, når null
opstår 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 ATAN()
uden at sende nogen argumenter returnerer en fejl:
SELECT ATAN()
FROM DUAL;
Resultat:
Error starting at line : 1 in command - SELECT ATAN() 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 ATAN(1, 2)
FROM DUAL;
Resultat:
Error starting at line : 1 in command - SELECT ATAN(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: