Oracle
 sql >> Datenbank >  >> RDS >> Oracle

SQRT()-Funktion in Oracle

In Oracle das SQRT() Funktion gibt die Quadratwurzel ihres Arguments zurück.

Syntax

Die Syntax lautet wie folgt:

SQRT(n)

Wobei n kann ein beliebiger numerischer Datentyp oder ein beliebiger nicht numerischer Datentyp sein, der implizit in einen numerischen Datentyp konvertiert werden kann.

Beispiel

Hier ist ein Beispiel:

SELECT SQRT(64)
FROM DUAL;

Ergebnis:

   SQRT(64) 
___________ 
          8

Nicht numerisches Argument

Wie bereits erwähnt, kann das Argument ein beliebiger numerischer Datentyp oder ein beliebiger nicht numerischer Datentyp sein, der implizit in einen numerischen Datentyp konvertiert werden kann.

Folgendes passiert, wenn wir ein nicht numerisches Argument angeben, das nicht in einen numerischen Datentyp konvertiert werden kann:

SELECT SQRT('One')
FROM DUAL;

Ergebnis:

Error starting at line : 1 in command -
SELECT SQRT('One')
FROM DUAL
Error report -
ORA-01722: invalid number

Nullwerte

Übergabe von null zu SQRT() gibt null zurück :

SET NULL 'null';

SELECT SQRT(null)
FROM DUAL;

Ergebnis:

   SQRT(NULL) 
_____________ 
         null 

Standardmäßig geben SQLcl und SQL*Plus ein Leerzeichen zurück, wenn null tritt als Ergebnis eines SQL SELECT auf Erklärung.

Sie können jedoch SET NULL verwenden um eine andere Zeichenfolge anzugeben, die zurückgegeben werden soll. Hier habe ich angegeben, dass der String null zurückgegeben werden soll.

Falsche Argumentanzahl

Aufruf von SQRT() ohne Übergabe von Argumenten gibt einen Fehler zurück:

SELECT SQRT()
FROM DUAL;

Ergebnis:

Error starting at line : 1 in command -
SELECT SQRT()
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:

Und das Übergeben der falschen Anzahl von Argumenten führt zu einem Fehler:

SELECT SQRT(1, 2)
FROM DUAL;

Ergebnis:

Error starting at line : 1 in command -
SELECT SQRT(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: