Você está na página 1de 5

http://pgdocptbr.sourceforge.net/pg80/functions-math.

html

Altavista

Procurar

Procurar

Anterior

Incio

Documentao do PostgreSQL 8.0.0 Captulo 9. Funes e Operadores

Fim

Prxima

9.3. Funes e operadores matemticos So fornecidos operadores matemticos para muitos tipos de dado do PostgreSQL. Para os tipos sem as convenes matemticas habituais para todas as permutaes possveis (por exemplo, os tipos de data e hora), o comportamento real descrito nas prximas sees. A Tabela 9-2 mostra os operadores matemticos disponveis. Tabela 9-2. Operadores matemticos

Operador + * / % ^ |/ ||/ ! !! @ & | # ~ << >>

Descrio adio subtrao multiplicao diviso (diviso inteira trunca o resultado) mdulo (resto) exponenciao raiz quadrada raiz cbica fatorial fatorial (operador de prefixo) valor absoluto AND bit a bit OR bit a bit XOR bit a bit NOT bit a bit deslocamento esquerda bit a bit deslocamento direita bit a bit

Exemplo 2+3 2-3 2*3 4/2 5%4 2.0 ^ 3.0 |/ 25.0 ||/ 27.0 5! !! 5 @ -5.0 91 & 15 32 | 3 17 # 5 ~1 1 << 4 8 >> 2

Resultado 5 -1 6 2 1 8 5 3 120 120 5 11 35 20 -2 16 2

Os operadores bit a bit [1] trabalham somente em tipos de dado inteiros, enquanto os demais esto disponveis para todos os tipos de dado numricos. Os operadores bit a bit

tambm esto disponveis para os tipos cadeia de bits bit e bit varying, conforme mostrado na Tabela 9-12. A Tabela 9-3 mostra as funes matemticas disponveis. Nesta tabela "dp" significa double precision. Muitas destas funes so fornecidas em vrias formas, com diferentes tipos de dado dos argumentos. Exceto onde estiver indicado, todas as formas das funes retornam o mesmo tipo de dado de seu argumento. As funes que trabalham com dados do tipo double precision so, em sua maioria, implementadas usando a biblioteca C do sistema hospedeiro; a preciso e o comportamento em casos limites podem, portanto, variar dependendo do sistema hospedeiro. Tabela 9-3. Funes matemticas

Funo abs(x) cbrt(dp) ceil(dp ou numeric) ceiling(dp ou numeric) degrees(dp) exp(dp ou numeric) floor(dp ou numeric) ln(dp ou numeric) log(dp ou numeric) log(b numeric, x numeric)

Tipo retornado (o mesmo dex) dp

valor absoluto raiz cbica

(o mesmo o menor inteiro da entrada) (o mesmo o menor inteiro da entrada) (o mesmo que dp (o mesmo da entrada) (o mesmo da entrada) (o mesmo da entrada) (o mesmo da entrada) numeric

radianos para g exponenciao o maior inteiro

logaritmo natur

logaritmo na ba

logaritmo na ba

mod(y, x) pi() power(a dp, b dp) power(a numeric, b numeric) radians(dp) random() round(dp ou numeric)

(o mesmo tipo dos resto de y/x argumentos ) dp constante "" dp numeric dp a elevado a b a elevado a b

graus para radi

dp valor randmico (o mesmo arredondar par da entrada)

Funo round(v numeric, s integer) setseed(dp) sign(dp ou numeric) sqrt(dp ou numeric) trunc(dp ou numeric) trunc(v numeric, s integer)

Tipo retornado numeric integer

arredondar par

define a semen chamadas aran

(o mesmo sinal do argume da entrada) (o mesmo raiz quadrada da entrada) (o mesmo trunca em dire da entrada) numeric

trunca com s ca

width_bucket(operandonumeric, b1 numeric, b2numeric, con integer tador integer)


A Tabela 9-4 mostra as funes trigonomtricas disponveis. Todas as funes trigonomtricas recebem argumentos e retornam valores do tipo double precision. Tabela 9-4. Funes trigonomtricas

retorna a barra atribudo, em u histograma equ um limite super de b2

Funo acos(x) asin(x) atan(x) atan2(x, y) cos(x) cot(x) sin(x) tan(x)

Descrio arco cosseno arco seno arco tangente arco tangente de x/y cosseno cotangente seno tangente

A Tabela 9-5 compara as funes matemticas do Oracle 10g, do SQL Server 2005, do DB2 9 e do PostgreSQL 8.0.0. Nota: Tabela escrita pelo tradutor, no fazendo parte do manual original. Tabela 9-5. Funes matemticas do Oracle 10g, do SQL Server 2005, do DB2 9 e do PostgreSQL 8.0.0

Funo valor absoluto arco cosseno arco seno arco tangente de n

Oracle 10g[a] [b
]

SQL Server 2005[c] abs(n)

DB2 9.1 [d]

PostgreSQL 8.0.0

abs(n)

acos(n) acos(f) asin(n) asin(f) atan(n) atan(f)

abs(n) ouabs abs(x) val(n) acos(d) acos(x) asin(d) asin(x) atan(d) atan(x)

Funo arco tangente de x/y raiz cbica menor inteiro no menor que o argumento cosseno cosseno hiperblico cotangente radianos para graus exponenciao maior inteiro no maior que o argumento logaritmo natural logaritmo, qualquer base logaritmo, base 10 mdulo (resto) constante potenciao graus para radianos nmero randmico arredondar para o inteiro mais prximo arredondar para s casas decimais

Oracle 10g[a] [b
]

SQL Server 2005[c]

DB2 9.1 [d] atan2(d, d) ceil(n) ouceil ing(n) cos(d) cosh(d) cot(d) degrees(d) exp(d) floor(n)

PostgreSQL 8.0.0 atan2(x, y) cbrt(dp) ceil(dp ou numeric) cos(x) cot(x) degrees(dp) exp(dp ou numeric) floor(dp ou numeric)

atan2(n, atn2(f, f) m) ceil(n) cos(n) cosh(n) exp(n) ceiling(n) cos(f) cot(f) degrees(n) exp(f)

floor(n) floor(n) ln(n) log(m, n) log(10, n) mod(m, n) power( m, n) round(n ) round(n [,sinteg er]) log(f) log10(f)

ln(d) ou log( ln(dp ou numeric) d) log(b numeric, x num eric) log10(d) log(dp ou numeric)

dividendo % mod(n, n) mod(y, x) divisor pi() radians(180) pi() pow(a dp, b dp) power(f, y) power(n, n) e pow(a numeric,b nu meric) radians(n) radians(d) radians(dp) rand() rand() random() round(n,0) round(n,0) round(dp ou numeric)

round(n, s in round(n, sint round(v numeric, s int teger[,fun eger) eger) o]) rand(sement rand(sement setseed(dp) e) e) sign(n) sin(f) sqrt(f) tan(f) sign(n) sin(d) sinh(d) sqrt(d) tan(d) tanh(d) sign(dp ou numeric) sin(x) sqrt(dp ou numeric) tan(x) -

define a semente para as prximas chamadas a random() sinal do argumento (-1, 0, sign(n) +1) seno sin(n) seno hiperblico sinh(n) raiz quadrada sqrt(n) tangente tan(n) tangente hiperblica tanh(n)

Funo

Oracle 10g[a] [b
]

SQL Server 2005[c]

DB2 9.1 [d]

PostgreSQL 8.0.0

trunca em direo ao zero trunc(n) trunc(n, 0) trunc(dp ou numeric) trunc(n trunca com s casas trunc(n ,sint trunc(v numeric, s int [,sinteg decimais eger) eger) er]) Notas: a. Oracle 10g As funes numricas recebem entradas numricas e retornam valores numricos. A maior parte destas funes retornam valores com preciso de 38 dgitos decimais. As funes transcendentais cos, cosh, exp, ln, log, sin, sinh, sqrt, tan e tanh tm preciso de 36 dgitos decimais. As funes transcendentais acos, asin, atan e atan2 tm preciso de 30 dgitos decimais. Oracle Database SQL Reference 10g Release 1 (10.1) Part Number B10759-01 (N. do T.) b. Funo transcendental Em matemtica, uma funo que no pode ser expressa como uma combinao finita de operaes algbricas de adio, subtrao, multiplicao, diviso, elevar a uma potncia ou extrair uma raiz. Os exemplos incluem as funes log x, sin x, cos x, ex e qualquer funo contendo uma destas. Estas funes so expressas em termos algbricos apenas como sries infinitas. Em geral, o termo transcendental significa no-algbrico. transcendental function Britannica
Concise Encyclopedia

c. SQL Server 2005 As funes abs, ceiling, degrees, floor, power e radians retornam um valor que possui o mesmo tipo de dado da expresso numrica da entrada. As funes acos, asin, atan, cos, cot, exp, log, log10, sin, sqrt, square e tan recebem como argumento uma expresso de ponto flutuante, e retornam um valor de ponto flutuante. Todas as funes matemticas, exceto rand, so funes determinsticas; retornam o mesmo resultado toda vez que so chamadas com o mesmo conjunto de valores de entrada. rand s determinstica quando especificado o parmetro semente. SQL Server 2005 Books Online Mathematical Functions (Transact-SQL) d. DB2 9.1 DB2 Version 9 for Linux, UNIX, and Windows Supported functions and administrative SQL
routines and views

Notas
[1]

bitwise um operador bit a bit trata seus operandos como um vetor de bits, em vez de como um nico nmero. FOLDOC - Free On-Line Dictionary of Computing (N. do T.)

Anterior

Operadores de comparao

Principal Acima

Prxima

Funes e operadores para cadeias de caracteres