W Oracle ASIN() funkcja zwraca arcus sinus (odwrotny sinus) swojego argumentu.
Innymi słowy, zwraca wartość, której sinus jest argumentem.
Składnia
Składnia wygląda tak:
ASIN(n)
Gdzie n jest poprawnym wyrażeniem, które rozwiązuje do liczby między -1 i 1 .
Przykład
Oto przykład:
SELECT ASIN(0.7130)
FROM DUAL; Wynik:
ASIN(0.7130) _____________________________________________ 0.7937675542241276685031867479973723291388
Argument poza zakresem
Argument musi być pomiędzy -1 i 1 . Jeśli jest poza tym zakresem, zwracany jest błąd.
Przykład:
SELECT ASIN(2)
FROM DUAL; Wynik:
Error starting at line : 1 in command - SELECT ASIN(2) FROM DUAL Error report - ORA-01428: argument '2' is out of range
Argument nieliczbowy
Argumentem może być dowolny numeryczny typ danych lub dowolny nienumeryczny typ danych, który można niejawnie przekonwertować na numeryczny typ danych.
Oto, co się dzieje, gdy dostarczamy nieliczbowy argument, którego nie można przekonwertować na liczbowy typ danych:
SELECT ASIN('One')
FROM DUAL; Wynik:
Error starting at line : 1 in command -
SELECT ASIN('One')
FROM DUAL
Error report -
ORA-01722: invalid number Wartości puste
Przekazywanie null do ASIN() zwraca null :
SET NULL 'null';
SELECT ASIN(null)
FROM DUAL; Wynik:
ASIN(NULL)
_____________
null
Domyślnie SQLcl i SQL*Plus zwracają spację, gdy null występuje w wyniku polecenia SQL SELECT oświadczenie.
Możesz jednak użyć SET NULL aby określić inny ciąg do zwrócenia. Tutaj określiłem, że ciąg null należy zwrócić.
Nieprawidłowa liczba argumentów
Wywołanie ASIN() bez przekazywania żadnych argumentów zwraca błąd:
SELECT ASIN()
FROM DUAL; Wynik:
Error starting at line : 1 in command - SELECT ASIN() 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:
A przekazanie niewłaściwej liczby argumentów skutkuje błędem:
SELECT ASIN(1, 2)
FROM DUAL; Wynik:
Error starting at line : 1 in command - SELECT ASIN(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: