O que faz M, D média em decimal (M, D), exatamente?
Pergunta
Alguém sabe sobre isso?
Solução
Como dizem os docs :
M é o número máximo de dígitos (o precisão). Ele tem uma gama de 1-65. (As versões mais antigas de MySQL permitido um intervalo de 1 a 254).
D é o número de dígitos à direita do ponto decimal (escala). isto tem um intervalo de 0 a 30 e deve não ser maior do que M.
Assim M significa máxima (número de dígitos em geral), D representa para as casas decimais (o número de dígitos à direita do ponto decimal).
Outras dicas
https: //dev.mysql .com / doc / refman / 5,7 / en / precisão matemática decimal-characteristics.html
A sintaxe de declaração para uma coluna DECIMAL é decimal (H, D). As faixas de valores para os argumentos em MySQL 5.1 são os seguintes:
- M é o número máximo de dígitos (a precisão). Ele tem um intervalo de 1 a 65. (versões mais antigas do MySQL permitiu uma gama de 1 a 254).
- D é o número de dígitos à direita do ponto decimal (a escala). Tem uma escala de 0 a 30 e não pode ser maior do que M.
[Nota:. Link acima foi atualizado para apontar para o MySQL 5.7 docs, mas o texto foi citado a partir do MySQL 5.1 docs]
O doc diz :
A sintaxe de declaração para uma coluna DECIMAL permanece DECIMAL (H, D), embora a gama de valores para os argumentos mudou um pouco:
M é o número máximo de dígitos (a precisão). Ele tem um intervalo de 1 a 65. Isto introduz uma possível incompatibilidade de aplicativos mais antigos, porque as versões anteriores do MySQL permitem um intervalo de 1 a 254. (A precisão de 65 dígitos na verdade se aplica a partir do MySQL 5.0.6. A partir 5.0.3 a 5.0.5, a precisão é de 64 dígitos.)
D é o número de dígitos à direita do ponto decimal (a escala). Tem uma escala de 0 a 30 e não pode ser maior do que M.