14th May 2024 13 minutos de leitura Funções numéricas do SQL Martyna Sławińska funções numéricas Índice Funções numéricas SQL escalares Adição com + Subtração com - Multiplicação com * Divisão com / ABS() ACOS() ASIN() ATAN() CEILING() COS() COT() DEGREES() DIV() EXP() FLOOR() GREATEST() MENOR() LN() LOG() LOG10() MOD() PI() POWER() RADIANS() RAND() ou RANDOM() ROUND() SIGN() SIN() SQRT() SQUARE() TAN() TRUNC() Funções agregadas AVG() COUNT() MAX() MIN() SUM() Mais ajuda com as funções numéricas do SQL Analise todas as funções numéricas do SQL, incluindo suas definições e exemplos. As funções numéricas do SQL realizam operações em números. Elas recebem um ou mais números como argumentos e retornam um número como saída. Observe que os números podem ser de diferentes tipos de dados, inclusive inteiros, duplos e flutuantes. Você pode saber mais sobre os tipos de dados numéricos e decimais aqui. As funções numéricas do SQL podem ser divididas em funções escalares e agregadas. As funções escalares calculam um resultado para cada linha de entrada individualmente. Por exemplo, a aplicação da função ABS() a uma coluna produz o valor absoluto de cada linha dentro dessa coluna. Por outro lado, as funções agregadas operam em valores de várias linhas para produzir um resultado - por exemplo, a aplicação da função MAX() a uma coluna produz o valor mais alto entre todas as linhas dessa coluna. Confira nosso curso sobre Funções Comuns em SQL que inclui exercícios sobre esses tipos de funções: Numérica Texto Data e hora Agregado Conclua os exercícios para revisar e consolidar seus conhecimentos e, em seguida, teste-os com o questionário final. Funções numéricas SQL escalares As funções numéricas escalares do SQL manipulam valores individuais, de forma semelhante a uma calculadora. Function Description Further reading + → Takes two numbers. ← Adds the numbers and returns the result. - → Takes two numbers. ← Subtracts the numbers and returns the result. * How to subtract values in SQL * → Takes two numbers. ← Multiplies the numbers and returns the result. * How to multiply values in SQL / → Takes two numbers. ← Divides the numbers and returns the result. * How the division operator works in SQL * How to handle division by zero in SQL * How to divide columns in MySQL or Oracle * How to divide columns in SQL Server, PostgreSQL, or SQLite ABS() → Takes one number. ← Returns the absolute value of the number. * How to compute an absolute value in SQL ACOS() → Takes a number between -1 and 1. ← Returns the arc cosine value in radians. ASIN() → Takes a number between -1 and 1. ← Returns the arc sine value in radians. ATAN() → Takes one number. ← Returns the arc tangent value in radians. CEILING() → Takes one number. ← Returns the smallest integer value that is greater than or equal to the number. * How to round up a number to the nearest integer in SQL COS() → Takes one number. ← Returns the cosine value in radians. COT() → Takes one number. ← Returns the cotangent value in radians. DEGREES() → Takes a number in radians. ← Converts it to degrees and returns the result. DIV() → Takes two numbers. ← Divides the numbers and returns the result. * How to handle division by zero in SQL * How to divide columns in MySQL or Oracle * How to divide columns in SQL Server, PostgreSQL, or SQLite EXP() → Takes one number. ← Calculates e to the power of the number and returns the result. FLOOR() → Takes one number. ← Returns the greatest integer value that is less than or equal to the number. * How to floor numbers in SQL GREATEST() → Takes a list of numbers. ← Returns the greatest number. LEAST() → Takes a list of numbers. ← Returns the smallest number. LN() → Takes one number. ← Returns the natural logarithm of the number. LOG() → Takes one number. ← Returns the natural logarithm of the number. LOG10() → Takes one number. ← Returns the base 10 logarithm of the number. MOD() → Takes two numbers. ← Divides the numbers and returns the remainder value (the modulus). *How to get a remainder using MOD() in PostgreSQL, MS SQL Server, and MySQL PI() → Takes no arguments. ← Returns the value of π. POWER() → Takes two numbers. ← Raises the 1st number to the power of the 2nd number and returns the result. RADIANS() → Takes a number in degrees. ← Converts it to radians and returns the result. RAND() → Takes no arguments. ← Returns a random number between 0 (inclusive) and 1 (exclusive). ROUND() → Takes one or two numbers. ← Rounds the 1st number to an integer or to as many decimal places as indicated by the 2nd number and returns the result. * How to round numbers in SQL * How to use the ROUND() function in SQL SIGN() → Takes one number. ← Returns a positive or negative number indicating the sign of the number. SIN() → Takes one number. ← Returns the sine value in radians. SQRT() → Takes one number. ← Returns the square root value of the number. * How to calculate a square root in SQL SQUARE() → Takes one number. ← Returns the squared value of the number. * How to calculate a square in SQL TAN() → Takes one number. ← Returns the tangent value in radians. TRUNC() → Takes two numbers. ← Truncates the 1st number to as many decimal places as indicated by the 2nd number and returns the result. As seções a seguir apresentam exemplos de cada função. Adição com + O operador + retorna o resultado da adição de dois números. SELECT 3 + 2 AS sum; sum 5 Subtração com - O operador - retorna o resultado da subtração de dois números. SELECT 3 - 2 AS difference; difference 1 Consulte este artigo para saber mais sobre como subtrair valores no SQL. Multiplicação com * O operador * retorna o resultado da multiplicação de dois números. SELECT 3 * 2 AS product; product 6 Siga este artigo para saber mais sobre como multiplicar valores em SQL. Divisão com / O operador / retorna o resultado da divisão de dois números. SELECT 4 / 2 AS quotient; quotient 2 Leia estes artigos para saber mais sobre: Como o operador de divisão funciona no SQL. Como lidar com a divisão por zero no SQL. Como dividir colunas no MySQL ou no Oracle. Como dividir colunas no SQL Server, PostgreSQL ou SQLite. ABS() A função ABS() retorna o valor absoluto de um determinado número. SELECT ABS(-9) AS abs; abs 9 Confira este artigo para saber mais sobre como calcular um valor absoluto no SQL. ACOS() A função ACOS() usa um número entre -1 e 1 e retorna o valor do arco cosseno em radianos. SELECT ACOS(1) AS acos; acos 0 ASIN() A função ASIN() usa um número entre -1 e 1 e retorna o valor do arco seno em radianos. SELECT ASIN(0) AS asin; asin 0 ATAN() A função ATAN() retorna o valor do arco tangente em radianos. SELECT ATAN(0) AS atan; atan 0 CEILING() A função CEILING() retorna o menor valor inteiro que é maior ou igual a um determinado número. SELECT CEILING(5.5) AS ceiling; ceiling 6 Leia este artigo para saber mais sobre como arredondar um número para o inteiro mais próximo no SQL. COS() A função COS() retorna o valor do cosseno em radianos. SELECT COS(0) AS cos; cos 1 COT() A função COT() retorna o valor da cotangente em radianos. SELECT COT(PI()/2) AS cot; cot 0 DEGREES() A função DEGREES() converte um determinado número de radianos para graus. SELECT DEGREES(PI()) AS degrees; degrees 180 DIV() A função DIV() retorna o resultado da divisão de dois números. SELECT DIV(4, 2) AS div; div 2 Consulte estes artigos para saber mais sobre: Como lidar com a divisão por zero no SQL. Como dividir colunas no MySQL ou no Oracle. Como dividir colunas no SQL Server, PostgreSQL ou SQLite. Como o operador de divisão funciona no SQL. EXP() A função EXP() retorna e à potência de um determinado número. SELECT EXP(0) AS exp; exp 1 FLOOR() A função FLOOR() retorna o maior valor inteiro que é menor ou igual a um determinado número. SELECT FLOOR(5.5) AS floor; floor 5 Leia este artigo para saber mais sobre como fazer o piso de números no SQL. GREATEST() A função GREATEST() retorna o maior número de uma determinada lista. SELECT GREATEST(1, 2, 3, 4, 5) AS greatest; greatest 5 MENOR() A função LEAST() retorna o menor número de uma determinada lista. SELECT LEAST(1, 2, 3, 4, 5) AS least; least 1 LN() A função LN() retorna o logaritmo natural de um determinado número. SELECT LN(1) AS ln; ln 0 LOG() A função LOG() retorna o logaritmo natural de um determinado número. SELECT LOG(1) AS log; log 0 LOG10() A função LOG10() retorna o logaritmo de base 10 de um determinado número. SELECT LOG10(100) AS log10; log10 2 MOD() A função MOD() retorna o resto da divisão de dois números determinados. SELECT MOD(5, 2) AS mod; mod 1 PI() A função PI() retorna o valor de π. SELECT PI() AS pi; pi 3.141592653589793 POWER() A função POWER() retorna o primeiro número dado elevado à potência do segundo número dado. SELECT POWER(2, 3) AS power; power 8 RADIANS() A função RADIANS() converte um determinado número de graus para radianos. SELECT RADIANS(180) AS radians; radians 3.141592653589793 RAND() ou RANDOM() A função RAND() (ou RANDOM()) retorna um número aleatório entre 0 (inclusive) e 1 (exclusivo). SELECT RAND() AS random; random 0.5599700481846526 ROUND() A função ROUND() arredonda um determinado número para um número inteiro ou para um número especificado de casas decimais. SELECT ROUND(5.4) AS round; round 5 SELECT ROUND(5.6) AS round; round 6 SELECT ROUND(5.4567, 2) AS round; round 5.46 Confira estes artigos para saber mais sobre como arredondar números no SQL e como usar a função ROUND() no SQL. SIGN() A função SIGN() retorna -1 (se o argumento for um número negativo), 1 (se o argumento for um número positivo) ou 0 (se o argumento for um zero), indicando o sinal de um determinado número. SELECT SIGN(-3) AS sign; sign -1 SELECT SIGN(3) AS sign; sign 1 SIN() A função SIN() retorna o valor do seno em radianos. SELECT SIN(PI()) AS sin; sin 0 SQRT() A função SQRT() retorna o valor da raiz quadrada de um determinado número. SELECT SQRT(9) AS sqrt; sqrt 3 Consulte este artigo para saber como calcular uma raiz quadrada no SQL. SQUARE() A função SQUARE() retorna o valor ao quadrado de um determinado número. SELECT SQUARE(3) AS square; square 9 Siga este artigo para saber mais sobre como calcular um quadrado em SQL. TAN() A função TAN() retorna o valor da tangente em radianos. SELECT TAN(0) AS tan; tan 0 TRUNC() A função TRUNC() trunca um determinado número em um número especificado de casas decimais. SELECT TRUNC(12.345, 1) AS trunc; trunc 12.3 Funções agregadas As funções agregadas realizam cálculos em um conjunto de números, pegando todos os valores de uma coluna e realizando cálculos com base em grupos definidos de dados. Aggregate function Description Further reading AVG() → Takes a column of a numeric data type. ← Returns the average of all numbers. * How to find the average of a numeric column in SQL * The SQL AVG() function explained with examples * How to filter records with AVG COUNT() → Takes a column of a numeric data type. ← Returns the number of rows. *A detailed guide to the SQL COUNT() function *What is the difference between COUNT(*), COUNT(column), and COUNT(DISTINCT)? *How to use COUNT() with GROUP BY *How to count distinct values in SQL * How to count the number of rows in a table in SQL *How to filter records with COUNT MAX() → Takes a column of a numeric data type. ← Returns the greatest number. *SQL MIN() and MAX() functions explained in 6 examples *How to find the maximum value of a numeric column in SQL * How to find rows with the maximum value MIN() → Takes a column of a numeric data type. ← Returns the smallest number. *SQL MIN() and MAX() functions explained in 6 examples *How to find the minimum value of a column in SQL *How to find rows with the minimum value SUM() → Takes a column of a numeric data type. ← Returns the sum of all numbers. *SQL SUM() function explained with 5 practical examples *How to use SUM() with GROUP BY *How to sum values in a column in SQL *How to filter records with SUM As seções a seguir apresentarão exemplos de cada função usando a tabela de números: categorynumber A1 A2 A3 B4 B5 B6 AVG() A função AVG() calcula a média de todos os valores de uma determinada coluna. SELECT AVG(number) AS avg FROM numbers; avg 3.5 Ela também pode retornar a média de cada grupo: SELECT category, AVG(number) AS avg FROM numbers GROUP BY category; categoryavg A2 B5 Leia estes artigos para ver: Mais exemplos da função AVG(). Como encontrar a média de uma coluna numérica no SQL. Como filtrar registros com AVG. COUNT() A função COUNT() retorna o número de valores não nulos em uma determinada coluna. SELECT COUNT(number) AS count FROM numbers; count 6 Ela também retorna o número de valores em um grupo: SELECT category, COUNT(number) AS count FROM numbers GROUP BY category; categorycount A3 B3 Leitura adicional sobre essa função: Um guia detalhado da função SQL COUNT() Como contar o número de linhas em uma tabela no SQL Qual é a diferença entre COUNT(*), COUNT(column) e COUNT(DISTINCT)? Como usar COUNT() com GROUP BY Como contar valores distintos no SQL Como filtrar registros com COUNT Como ordenar por contagem no SQL MAX() A função MAX() retorna o maior número de uma determinada coluna. SELECT MAX(number) AS max FROM numbers; max 6 Ela também retorna o maior valor por grupo: SELECT category, MAX(number) AS max FROM numbers GROUP BY category; categorymax A3 B6 Leia estes artigos para ver: Mais exemplos da função MAX(). Como encontrar o valor máximo de uma coluna numérica no SQL. Como encontrar linhas com o valor máximo. MIN() A função MIN() retorna o menor número de uma determinada coluna. min 1 Ela também retorna o menor valor por grupo: SELECT category, MIN(number) AS min FROM numbers GROUP BY category; categorymin A1 B4 Consulte estes artigos para obter mais informações: Mais exemplos da função MIN(). Como encontrar o valor mínimo de uma coluna no SQL. Como localizar linhas com o valor mínimo. SUM() A função SUM() retorna a soma de todos os valores de uma determinada coluna. SELECT SUM(number) AS sum FROM numbers; sum 21 Ela também retorna a soma de todos os valores em um grupo: SELECT category, SUM(number) AS sum FROM numbers GROUP BY category; categorysum A6 B15 Leia estes artigos para ver: Mais exemplos da função SUM(). Como usar SUM() com GROUP BY. Como somar valores de uma coluna no SQL. Como filtrar registros com SUM. Como ordenar linhas por soma de grupo no SQL. Mais ajuda com as funções numéricas do SQL O SQL oferece muitas funções diferentes: funções numéricas, funções de texto, funções de data e hora, entre outras. Para obter mais informações sobre elas, consulte nosso livro de receitas SQL e os artigos do nosso blog. Além disso, confira esta folha de consulta gratuita sobre funções SQL. Você pode baixá-la, imprimi-la e mantê-la à mão enquanto trabalha e aprende. Mais uma vez, recomendo que você confira nosso curso sobre Funções Comuns em SQL se você realmente quiser praticar um pouco. Bom aprendizado! Tags: funções numéricas