Pular para o conteúdo principal

Dominando o SQL ROUND: Manuseio de precisão na análise de dados

Saiba como usar a função ROUND do SQL neste tutorial. Ele aborda a implementação da função ROUND no Oracle, MySQL, PostgreSQL e SQL Server.
Actualizado 15 de jan. de 2025  · 10 min de leitura

Quando você trabalha com dados, a precisão é importante. Mas, como cientista ou engenheiro de dados, você lida com as complexidades de transformar dados em insights todos os dias.

Como sempre há espaço para aprimorar seu conjunto de habilidades, você pode melhorar seus recursos e sua confiança no manuseio de dados usando a função SQL `ROUND`.

Este guia tem o objetivo de explorar como uma função SQL `ROUND' pode ajustar a precisão dos dados em sua análise.

O que é SQL ROUND?

A função ROUND é uma ferramenta fundamental que ajusta a precisão dos dados numéricos no SQL. Ele arredonda os valores para um número específico de casas decimais e simplifica os dados para análise.

Por exemplo, com o SQL ROUND, você pode alterar um número como 3.14159 para 3.14 arredondando-o para duas casas decimais. Isso é útil quando a precisão exata não é necessária e os números arredondados são suficientes para a interpretação.

Agora que você sabe o que é o SQL ROUND, vamos ver como implementá-lo em diferentes bancos de dados.

Sintaxe ROUND

A função ROUND é comum, mas sua sintaxe não é uniforme em todos os bancos de dados. Veja como isso difere:

Sintaxe no Oracle, MySQL e PostgreSQL

Nesses bancos de dados, ROUND segue um formato simples de dois parâmetros:

ROUND(number, decimal_places)

Aqui:

  • A entrada refere-se ao número que você deseja arredondar.
  • Decimais especifica o número de casas decimais a serem arredondadas.

Sintaxe no SQL Server

No entanto, o SQL Server acrescenta uma reviravolta a esse formato - ele tem um terceiro parâmetro opcional chamado função:

ROUND(number, decimal_places [, function])

Aqui:

  • Os dois primeiros parâmetros, entrada e decimais, funcionam exatamente como nos outros bancos de dados.
  • O parâmetro de função opcional especifica a direção do arredondamento em determinadas condições.

Essa diferença de sintaxe parece pequena, mas é fundamental entendê-la, pois ajuda você a aplicar a função ROUND corretamente, independentemente do ambiente de banco de dados em que estiver trabalhando.

Parâmetros da função SQL ROUND

A função ROUND usa três parâmetros principais: entrada, decimais e operação. Ao compreender esses parâmetros, você pode usar a função de forma eficaz em bancos de dados SQL.

Parâmetro de entrada

Input é o número que você deseja arredondar. Pode ser um número direto, uma coluna do banco de dados ou o resultado de uma expressão.

Parâmetro decimal

O parâmetro decimal controla em quantas casas decimais você arredonda a entrada. Um número positivo aqui é arredondado para essa quantidade de casas decimais.

Função Parâmetro

O parâmetro de função é opcional. Ele decide a direção do arredondamento para valores exatamente no meio de dois números. Por padrão, seu valor é 0. Qualquer outro valor faz com que a função trunque ou corte a entrada sem arredondamento.

Esses parâmetros ajudam no arredondamento preciso e controlado dos números.

Uso da função SQL ROUND em bancos de dados SQL

Você pode usar o SQL ROUND em vários bancos de dados SQL. No entanto, dependendo do banco de dados, sua aplicação pode ser ligeiramente diferente em termos de sintaxe e comportamento.

Veja como você pode usá-lo em alguns dos bancos de dados mais populares:

Implementação no Oracle

A função ROUND no Oracle trabalha com dados numéricos e valores de data. Quando aplicado a números, ele arredonda o valor para a casa decimal especificada.

Para valores de data, o site ROUND pode ajustar uma data para o dia, mês, ano mais próximo, etc., dependendo do formato especificado.

Aqui está um exemplo de como isso funciona no Oracle:

Suponha que você tenha a seguinte tabela PRODUCTS.

image8.jpg

Agora, se você quiser arredondar a coluna standard_cost para uma casa decimal, veja como você faria uma consulta.

SELECT Round(STANDARD_COST, 1) 
FROM PRODUCTS

É assim que você verá o custo arredondado.

image7.jpg

Implementação no MySQL

No MySQL, o ROUND funciona de forma semelhante ao arredondamento de números para uma precisão especificada.

Aqui está um exemplo de como isso funciona:

Suponha que você tenha a seguinte tabela purchase_details.

image16.jpg

Agora, se você quiser arredondar a coluna Paid_amount para duas casas decimais, veja como você faria uma consulta.

SELECT Round(Paid_amount, 2) 
AS Result
FROM purchase_details

É assim que você verá o valor arredondado.

image3.jpg

Implementação no PostgreSQL

O PostgreSQL também implementa o ROUND de forma semelhante. Aqui está um exemplo de como você pode implementá-lo:

Suponha que você tenha a seguinte tabela reviews.

image14.jpg

Agora, se você quiser arredondar a coluna imdb_score para zero casas decimais, veja como você faria uma consulta.

SELECT Round(imdb_score, 0) 
AS Result 
FROM cinema.reviews

É assim que você verá as resenhas de filmes arredondadas.

image9.jpg

Implementação no SQL Server

No Microsoft SQL Server, o ROUND se comporta de forma semelhante ao Oracle ao lidar com valores numéricos.

Mas um aspecto exclusivo do SQL Server é seu terceiro parâmetro - function - que permite que os usuários especifiquem se desejam arredondar o número (function = 0 ou omitido) ou truncá-lo (function = 1).

Aqui está um exemplo de como o SQL ROUND funciona em um servidor SQL:

Suponha que você tenha a seguinte tabela order_items.

image10.jpg

Agora, se você quiser arredondar a coluna list_price para uma casa decimal, veja como você faria uma consulta.

SELECT Round(list_price, 1,0) 
AS Result 
FROM sales.order_items

É assim que você verá o preço arredondado.

image6.jpg

Implementação prática

Agora que você conhece os parâmetros, é hora de implementar a função ROUND na prática. Então, vamos ver como você pode fazer isso com números e datas na análise de dados.

ROUND com números

Suponha que você tenha uma tabela chamada orderDetails e que ela tenha uma coluna de preços com várias casas decimais.

image4.jpg

Agora, se você quiser arredondar a coluna Price para uma casa decimal, veja como você faria uma consulta.

SELECT Round(Price, 1) 
AS Result
FROM orderDetails

Essa consulta arredonda cada preço na tabela para uma casa decimal.

E é assim que você verá o resultado:

image2.jpg

ROUND com datas

No SQL, você pode arredondar os valores de data para um componente específico, como ano, mês, hora ou minuto.

Suponha que você tenha uma tabela chamada orders.

image5.jpg

Agora, se você quiser arredondar a coluna order_date para o ano mais próximo, veja como fazer uma consulta:

SELECT YEAR(order_date) 
AS ROUNDED_DATE
FROM sales.orders

Essa consulta arredonda cada data da coluna para o ano mais próximo.

E é assim que você verá o resultado:

image15.jpg

Técnicas avançadas de SQL ROUND

Além do arredondamento básico, a função SQL ROUND também é usada em cenários mais avançados, como, por exemplo, se você quiser fazer um arredondamento:

  • Resumo de SQL
  • SQL arredondado para baixo
  • Arredondamento para intervalos específicos

Veja a seguir como cada um deles funciona:

SQL ROUND Up e ROUND Down

Embora a função ROUND arredonde para o valor mais próximo, você pode obter direções de arredondamento específicas usando as funções CEIL e FLOOR.

CEIL arredonda qualquer valor decimal para o próximo número inteiro. Por exemplo, dê uma olhada nisso:

Você tem uma tabela chamada reviews.

image13.jpg

Veja como você aplicará a função CEIL à coluna user_score.

Select CEIL(user_score) 
FROM reviews

Este é o resultado que você obterá:

image11.jpg

Ao contrário da função CEIL, FLOOR arredonda qualquer valor decimal para o número inteiro mais próximo. Por exemplo, dê uma olhada nisso.

Se você aplicar FLOOR à tabela reviews anterior, veja como você fará a consulta:

Select FLOOR(user_score) 
FROM reviews

Este é o resultado que você obterá:

image1.jpg

Arredondamento para intervalos específicos

Às vezes, você precisa arredondar os números para intervalos específicos, como os 5, 10 ou 100 mais próximos. Para fazer isso, você deve combinar ROUND com divisão e multiplicação.

Digamos que você tenha que arredondar um número ou coluna para o 10 mais próximo e, para isso, faça a seguinte consulta:

SELECT Round(number / 10) * 10
FROM table_name

Essa técnica ajuda com desafios no gerenciamento de estoque ou na análise estatística, em que os dados agrupados em intervalos específicos fazem mais sentido.

Funções similares a SQL ROUND

Além do ROUND, existem várias outras funções no SQL para lidar com o arredondamento e o truncamento de números.

Função CEIL

A função CEILING, ou CEIL, arredonda um número para o inteiro mais próximo ou para a precisão especificada. O CEILING sempre arredonda para cima, ao contrário do ROUND, que arredonda para o valor mais próximo.

Por exemplo: CEILING(2.3) retorna 3.

Essa função é particularmente útil quando você precisa garantir que o valor arredondado não seja menor que o número original.

Função FLOOR

A função FLOOR arredonda um número para o inteiro mais próximo ou para a precisão especificada.

Por exemplo: FLOOR(2.7) retorna 2.

Essa função garante que o número arredondado não seja maior que o original.

Função TRUNC

A função TRUNC (truncate) remove a parte decimal de um número, arredondando para zero.

Por exemplo: TRUNC(2.9) retornará 2, e TRUNC(-2.9) retornará -2.

TRUNC remove a parte fracionária de um número sem necessariamente arredondá-la.

Em resumo, cada função -CEILING, FLOOR e TRUNC- tem uma finalidade específica na manipulação de dados, complementando a função ROUND.

Com essas funções, você pode lidar com uma ampla gama de cenários de arredondamento com maior precisão e adequação ao contexto de dados fornecido. Se você quiser aprender mais técnicas semelhantes de SQL, confira a folha de dicas e comece a praticar.

Conclusão

Obter dados corretos é muito importante, e a função SQL ROUND é uma ótima maneira de garantir que você possa trabalhar com os números facilmente. Ele ajuda você a arredondar os números para a casa decimal mais próxima e a tornar os dados mais fáceis de entender.

Se precisar arredondar os números de uma forma específica, você tem outras funções como CEIL, FLOOR e TRUNC para ajudá-lo.

Não importa se você está começando como profissional de dados júnior ou se deseja aprimorar suas habilidades, cursos como SQL Fundamentals e Intermediate SQL ajudarão.

Então, agora é hora de colocar isso em prática. Boa sorte!

Obtenha a certificação para a função de analista de dados dos seus sonhos

Nossos programas de certificação ajudam você a se destacar e a provar que suas habilidades estão prontas para o trabalho para possíveis empregadores.

Obtenha sua certificação
Timeline mobile.png

Laiba Siddiqui's photo
Author
Laiba Siddiqui
LinkedIn
Twitter

Sou um estrategista de conteúdo que adora simplificar tópicos complexos. Ajudei empresas como Splunk, Hackernoon e Tiiny Host a criar conteúdo envolvente e informativo para seus públicos.

Temas

Comece sua jornada SQL hoje mesmo!

Certificação disponível

curso

Introdução ao SQL

2 hr
891.9K
Aprenda a criar e consultar bancos de dados relacionais usando SQL em apenas duas horas.
Ver DetalhesRight Arrow
Iniciar curso
Ver maisRight Arrow
Relacionado

tutorial

FUNÇÃO SQL FORMAT()

FORMAT() é uma das funções mais comumente usadas no SQL. Aprenda suas principais aplicações neste tutorial.
Travis Tang 's photo

Travis Tang

3 min

tutorial

FUNÇÃO SQL COUNT()

COUNT() permite que você conte o número de linhas que correspondem a determinadas condições. Saiba como usá-lo neste tutorial.
Travis Tang 's photo

Travis Tang

3 min

tutorial

Função SQL COALESCE

COALESCE() é uma das funções mais úteis do SQL. Leia este tutorial para saber como dominá-lo.
Travis Tang 's photo

Travis Tang

4 min

tutorial

FUNÇÃO SQL DATEDIFF()

DATEDIFF() é uma das funções de manipulação de dados de data mais usadas no SQL. Domine-o lendo este tutorial.
Travis Tang 's photo

Travis Tang

3 min

tutorial

Tutorial do SQL Server: Desbloqueie o poder do gerenciamento de dados

Explore o gerenciamento de dados com nosso tutorial do SQL Server. Do básico ao uso avançado, aprimore suas habilidades e navegue no SQL Server com confiança.

Kevin Babitz

13 min

tutorial

SELEÇÃO de várias colunas no SQL

Saiba como selecionar facilmente várias colunas de uma tabela de banco de dados em SQL ou selecionar todas as colunas de uma tabela em uma consulta simples.
DataCamp Team's photo

DataCamp Team

3 min

Ver maisVer mais