Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

O tipo de dados decimal está arredondando os valores


  1. AFAIK o ponto é a notação padrão para valores decimais. O uso de vírgulas pode desencadear erros de análise SQL ou pode passar despercebido se o contexto sintático permitir que uma vírgula esteja lá.

  2. Como você definiu a precisão do DECIMAL coluna?

    Se for DECIMAL(10, 2) ele terá um total de 10 números, dos quais 2 são valores decimais (com 2 arredondamentos decimais significando que 10.215 é salvo como 10.22 e 10.214 torna-se 10.21 ).

    Se for DECIMAL(10) ele não terá nenhum valor decimal e será arredondado para um número inteiro.

  3. Se você usa FLOAT ou DOUBLE PRECISION você não precisa especificar o número de valores decimais, mas tem suas próprias falhas.