Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Função SQL Server ROUND():Para que serve e por que você deveria se importar?


SQL é uma linguagem de programação usada para criar, ler, atualizar e excluir bancos de dados. Possui uma das funções mais populares para arredondamento de números, que pode ser muito útil em muitas situações, como cálculos financeiros ou análises estatísticas. Este artigo ajudará você a entender como usar a função SQL Round em suas consultas e instruções de banco de dados.

O que é SQL Server?


O SQL Server é um sistema de gerenciamento de banco de dados executado no Windows e oferece alta disponibilidade, escalabilidade, confiabilidade e segurança.

Funções como ROUND permitem que os usuários concluam tarefas como fazer backup e restaurar bancos de dados ou arquivos, monitorar o desempenho com consultas, usar índices para melhorar a velocidade de consulta, gerenciar configurações de segurança para usuários e funções, criar logins para acesso externo a uma instância do SQL Server uma rede, e assim por diante.

Embora a função ROUND possa não ser tão complexa ou difícil de implementar quanto outras, é ótima para começar a aprender!

Você pode passar para funções de servidor SQL mais complicadas, como STR, STUFF, SUBSTRING, UPPER, FLOOR, MAX e MIN posteriormente.

O SQL Server também usa funções avançadas como ISNUMERIC, LAG, LEAD, NULLIF ou SESSION_USER.

SQL Server ROUND () Função:O que é?


A função SQL Server ROUND () (favorecida por desenvolvedores que usam o SQL Server Data Tools ou SSDT para abreviar projetos do Analysis Service, Reporting Service e Integration Service) é uma conversão de tipo de dados numéricos.

Esta função aceita um parâmetro que pode ser um número inteiro ou decimal e retorna o valor inteiro correspondente para a entrada fornecida. Simplificando, a função ROUND () do SQL Server arredonda o número para o inteiro mais próximo.

Como funciona?


A função SQL Server ROUND () foi projetada pela Microsoft e pode ser usada em vários campos, como matemática, engenharia, finanças, etc. Ela não tem limites nos valores de entrada e sempre arredonda para cima ou para baixo para o número inteiro mais próximo sem frações. A direção de arredondamento padrão está acima o que significa que ele arredondará números maiores que 0 para cima .

Na verdade, usá-lo é bastante simples. Vejamos a tabela abaixo:
Planetas Raio Temporada do Sol
1 Marte 3396 687,58
2 Saturno 10759.22 10759.22
3 Netuno 24764 60190,91
4 Mercúrio 2439 115,18
5 Vênus 6051 234,56

Com este operador, arredondamos a coluna SunSeason para um decimal:

1 SELECT ROUND(SunSeason, 1) FROM Planets

Estação do Sol
687,5
10759.2
60190.9
115,8
243,5

Que tal um exemplo mais interessante?


Imagine que estamos tentando calcular o tamanho médio de um disco rígido de PC, obtendo o resultado 13,6666666666667. Para arredondar esse resultado, podemos usar a função ROUND:
SELECT round(AVG(hd),2) AS avg_hd FROM pc;

O resultado é 13,67.

Você pode personalizar a função e alterar os parâmetros:
SELECT round(AVG(hd),-1) AS avg_hd FROM pc;

O resultado é 10.

Aqui está um exemplo de uso de parâmetros negativos com ROUND:

Você também pode usar esta função para truncamento:

Aqui está um exemplo de uso desta função com os salários dos funcionários:

Quais outras funções podem ser combinadas com ROUND no SQL Server?


A função ROUND é uma ferramenta versátil que pode ser usada em muitas situações. Você pode combinar muitas funções com ROUND no SQL Server. Aqui estão eles:TETO, PISO, TRUNCATE, SQRT, MIN e MAX, MOD, POWER, SQUARE ROOT e LOG.

Quais são os parâmetros?


ROUND() recebe dois argumentos:o primeiro é o número a ser arredondado e o segundo argumento especifica para quantas casas decimais ele deve ser arredondado.

A precisão de arredondamento padrão é 0, o que significa que os números são arredondados para um número inteiro. Você pode ajustar os parâmetros, até mesmo adicionar valores negativos.

Digite REDONDO(5.6) em sua janela de consulta e pressione Enter. A saída será 6 em vez de 5 porque você arredonda para o próximo número inteiro (este teria sido 7 se você tivesse especificado “ROUND(5.7)”).

Você pode especificar o número desejado de casas decimais adicionando .n (onde n é qualquer número inteiro positivo).

Onde posso usá-lo?


Esta pequena função funciona no SQL Server (a partir de 2008), Azure SQL Database, Azure SQL Data Warehouse, Parallel Data Warehouse.

Quais problemas ele resolve?


Essa função é útil para arredondar para um número especificado de casas decimais e facilitar o trabalho com seus dados, mas isso não é tudo o que ela pode fazer.

Também é usado para fins de relatório porque arredondará números em cálculos agregados como SUM(), AVG() ou COUNT().

Podemos usá-lo como uma ferramenta de manipulação de strings que converte todos os caracteres em letras maiúsculas. Além disso, pode ser usado em conjunto com funções como SUBSTRING(), TRIM(), LENGTH() e LEFT().

Posso usar ROUND no MySQL?


O MySQL é um sistema de gerenciamento de banco de dados relacional (RDMS) assim como o SQL Server, mas é de código aberto e gratuito, enquanto o SQL Server vem com uma licença da Microsoft.

MySQL é um dos bancos de dados mais usados ​​no mundo. Tem sido líder em recursos importantes, como transações, mecanismos de bloqueio, modos de recuperação, métodos de segurança e escalabilidade, etc.

Existe um equivalente da função Round no MySQL chamada Truncate. O roteiro é o seguinte:
 SELECT TRUNCATE(AVG(Salary),2)
   AS Avg_Salary
   FROM STAFF

Nota:Outros idiomas têm suas respectivas funções. Você deve estudar seus aspectos antes da implantação (especialmente as funções mais avançadas que mencionamos). Visite-nos para encontrar as respostas às suas perguntas.

Quais outros idiomas o Round usa?


Existem muitas linguagens além do SQL Server que usam a função ROUND, incluindo Pascal C++ Matlab Apex e assim por diante.

Resumo


A menos que você realmente em matemática, a função ROUND do SQL Server é mais tediosa do que um vendedor de cortinas de Idaho. Na verdade, é terrivelmente chato. Ele faz apenas 1 coisa – ele arredonda números.

No SQL Server, ele arredonda um determinado número para um inteiro truncando os dígitos após o ponto decimal até restar apenas um dígito antes de arredondar para cima ou para baixo de acordo com as regras especificadas.

Esta função não é suportada em todas as linguagens, mas existe em muitas delas, como C# e VB.NET. Você também pode usar ROUND para converter números de ponto flutuante em inteiros, bem como arredondar strings.