DICAS

Visite a biblioteca de dicas da comunidade.

Saiba mais

ARTIGOS

Abordagens detalhadas sobre assuntos diversos.

Saiba mais

INICIANTES

Aprenda a programar de um modo simples e fácil.

Saiba mais

DOWNLOADS

Acesse os materiais exclusivos aos membros.

Saiba mais
voltar

PARA QUEM GOSTA DE DELPHI

Funções de Arredondamento no MySQL

Fala galera do Show Delphi, tudo bem com vocês?

É muito comum precisarmos trabalhar com vários bancos de dados, uma vez que podemos desenvolver aplicativos que se conectarão em base de dados já existentes, ou mesmo a empresa já trabalhar com determinado banco de dados e querer continuar utilizando somente um.

E no meu caso, precisei trabalhar com o MySQL e ao fazer SQLs, precisei fazer alguns arredondamentos com valores numéricos.

Após pesquisas na internet, consegui descobrir formas de fazer estes arredondamentos e resolvi criar uma dica rápida sobre o MySQL para vocês.

Caso você necessite de valores arredondados para alguma aplicação, podes utilizar funções nativas do MySQL!
Vamos aos exemplos:

CEILING

Este comando SEMPRE arredonda para cima (em módulo), exemplos:

SELECT CEILING(4.5);
-- Resultado: 5
SELECT CEILING(-3.29);
-- Resultado: -3

FLOOR

Este comando SEMPRE arredonda para baixo (em módulo), exemplos:
 
SELECT FLOOR(1.5) ;
-- Resultado: 1
 
SELECT FLOOR(-2.37);
-- Resultado: -3

ROUND

Comando que arredonda para o próximo número inteiro (note que valores decimais abaixo de 5 são arredondados para baixo e acima de 5 para cima, e que a função aceita um segundo parâmetro que define o número de casas decimais do resultado), exemplo:

 
/* sem o segundo parâmetro o arredondamento será para número inteiro */
SELECT ROUND(-1.23);
-- Resultado: -1
 
SELECT ROUND(-1.58);
-- Resultado: -2
 
SELECT ROUND(1.298, 1);
-- Resultado: 1,3
 
SELECT ROUND(4.796, 2);
-- Resultado: 4,80
 
SELECT ROUND(1.298, 0);
-- Resultado: 1
 
SELECT ROUND(23.298, -1);
-- Resultado: 20

TRUNCATE

Elimina as casas decimais (também aceita um segundo valor definindo o número de casas decimais do resultado), exemplo:

SELECT TRUNCATE(1.223,1);
-- Resultado: 1.2
 
SELECT TRUNCATE(1.999,1);
-- Resultado: 1.9
 
SELECT TRUNCATE(122,-2);
 
-- Resultado: 100
SELECT TRUNCATE(10.28*100,0);
-- Resultado: 1028

Baseado no post: http://dbaprobrasil.blogspot.com/2009/10/funcoes-de-arredondamento-no-mysql.html

É isso pessoal, espero que seja útil a todos!

Dúvidas, deixe o seu comentário.

Um abraço e até o próximo post.

Facebook Comments Box
  • Giovani Da Cruz
  • 3.053 views
  • 0 comentários
  • 28 de outubro de 2020

Está gostando do conteúdo? Considere pagar um cafezinho para nossa equipe!

Deixe um comentário

Ir ao topo

© 2024 Infus Soluções em Tecnologia - Todos os Direitos Reservados