Programa
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.

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.

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.

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.

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.

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.

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.

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.

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.

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:

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.

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:

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.

Veja como você aplicará a função CEIL à coluna user_score.
Select CEIL(user_score)
FROM reviews
Este é o resultado que você obterá:

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á:

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.

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.


