sql >> Databasteknik >  >> RDS >> PostgreSQL

Hur Atan2() fungerar i PostgreSQL

I PostgreSQL, atan2() är en trigonometrisk funktion som returnerar arctangens, eller invers tangens, för det angivna x och y koordinater i radianer.

Syntax

Syntaxen ser ut så här:

atan2(y, x)

Där x och y är dubbel precision värden.

Arktangensen är vinkeln från x-axeln till en linje som innehåller origo (0, 0) och en punkt med koordinater (x , y )

Exempel

Här är ett exempel för att visa hur det fungerar.

SELECT atan2(1, 1);

Resultat:

0.7853981633974483

Detta returnerade arctangensen för punkten 1,1 i radianer.

Negativt argument

Argumentet kan också vara negativt.

SELECT atan2(-1, -1);

Resultat:

-2.356194490192345

Detta returnerade arctangensen för punkten -1,-1 i radianer.

Atan2() vs Atan(x/y)

Använder atan2(x, y) är funktionellt likvärdigt med att använda atan(x/y) .

En skillnad är dock att om du anger ett y-värde på noll, atan2() kommer inte att returnera ett fel, medan atan() kommer.

Här är ett exempel med atan2() :

SELECT atan2(1, 0);

Resultat:

1.5707963267948966

Och här är vad vi får med atan() när du försöker dividera med noll:

SELECT atan(1/0);

Resultat:

ERROR: division by zero

Återställ vinkeln i grader

Som nämnts, atan2() returnerar sitt argument i radianer . För att få det i grader , använd atan2d() fungera.

atan2d() Funktionen fungerar exakt på samma sätt som atan2() , förutom att dess argument returneras i grader istället för radianer.


  1. Postgresql infoga trigger för att ställa in värde

  2. Anropar en lagrad PROCEDUR i Toad

  3. Få åtkomst till externa XML-filer som variabler i ett PSQL-skript (från ett bash-skript)

  4. FEL:behörighet nekades för relationstabellnamn på Postgres vid försök med en SELECT som skrivskyddad användare