Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Peglow

Campo DECIMAL, NUMERIC

Recommended Posts

Olá, om dia a todos

Preciso entender como funciona o campo DECIMAL e NUMERIC referente ao (0,0), oque o numero antes da virgula quer dizer e oque o segundo número quer dizer?

Att;

Compartilhar este post


Link para o post
Compartilhar em outros sites

Os tipos NUMERIC e DECIMAL são implementados como o mesmo tipo pelo MySQL, como permitido pelo padrão SQL92. Eles são usados por valores para os quais é importante preservar a exatidão como, por exemplo, dados monetários. Quando é declarado um campo de algum desses tipos a precisão e a escala podem ser (e normalmente é) especificadas; por exemplo:

salario DECIMAL(5,2)

Neste exemplo, 5 (precisão) representa o número de digitos decimais significantes que serão armazenados no valor, e 2 (escala) representa o número de dígitos que serão armazenados após o ponto decimal. Neste caso, no entanto, a faixa de valores que podem ser armazendos na coluna salario é de -99.99 a 99.99. (MySQL pode, na verdade, armazenar numeros acima de 999.99 neste campo porque ele não precisa armazenar o sinal para números positivos).

Fonte

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por manolegal
      Olá amigos(as) do Fórum.
      Tenho um número inteiro no PHP e preciso inseri-lo no Postgresql com 02 casas decimais.
      Defini o campo no Postgresql do tipo numeric(14,2)
      O valor está assim no PHP:
      2961966 Preciso gravar no BD da seguinte maneira:
      29619.66 Porém está gravando da seguinte forma:
      2961966.00 Tentei utilizando number_format, porém não consegui:
      $numero_bd = number_format($numero, '.', ''); $numero_bd = number_format($numero,2,"."); $numero_bd = number_format($numero,2,","numerovalor_ref_15,2,",","."); Caso alguém possa me ajudar, desde já agradeço.
    • Por manolegal
      Bom dia
      Preciso adequar um campo para receber valor com máscara com 03 casas decimais.
      Com 02 casas está funcionando corretamente:
      $('#meu_campo').maskMoney( {symbol: "R$ ", decimal: ",", thousands: "."} ); Tentei:
      $('#meu_campo').maskMoney( {symbol: "R$ ", decimal: ",", thousands: ".", precision: "3"} ); Porém não funciona e nem permite que eu digite algum valor no campo.
      Preciso que o campo aceite valores no formato: ###,### ou ##,###.
    • Por @MF
      Boa tarde.
       
      Tenho um banco de dados que possui datas criadas no tipo numeric e não estou conseguindo convertê-las para tipo data.
       
      Utilizei
      SELECT var_string_1, CONVERT(date,CONVERT(VARCHAR,var_data_1),103) AS data_1, CONVERT(date,CONVERT(VARCHAR,var_data_2),103) AS data_2, CONVERT(date,CONVERT(VARCHAR,var_data_3),103) AS data_3, CONVERT(date,CONVERT(VARCHAR,var_data_4),103) AS data_4 FROM minha_tabela
       
      O erro que aparece é Conversion failed when converting date and/or time from character string.
       
      Alguém que possa ajudar por favor?
    • Por 11closed
      Olá, boa tarde! 
      Estou com uma duvida, que pelo o que pesquisei, é bastante discutida nas comunidades de programadores e cada um fala uma coisa, por tanto vim até aqui para tentar chegar a uma conclusão.
       
      Gostaria de gravar valores financeiros no BD de alguma forma que não traga problemas futuros, por causa de possiveis arredondamentos automaticos.
      Quero saber qual o melhor mecanismo para gravar no campo de valores financeiros, valores com decimais e dizimas, exe: 0.2308, 128.997, 1.28989 ..etc independentemente da quantidade de numeros no dizimas, eu preciso saber a quantidade exata.
       
      Obrigado, no aguardo
       
    • Por manolegal
      Bom dia
      Estou realizando a soma total de um campo que pode receber vários valores, porém a soma está mostrando valor decimal "1,00" ao invés de por exemplo "1,78".
      Meu código:
      <?php for($i=0; $i<count($valor_dcto_fiscal); $i++) { ?> <td> <?php $total_produto = $valor_dcto_fiscal[$i]; ?> <?php $total_geral = $total_geral + $total_produto; ?></td> <td><input name="valor_dcto_fiscal[]" id="valor_dcto_fiscal<?php echo "$i";?>" type="text" size="12" maxlength="10" value="<?php echo "$valor_dcto_fiscal[$i]";?>" onkeyup="multiplica('<?php echo "$i";?>')" ></td> <?php } // Fecha "for" ?> <td>Total:<input name="valor_total_geral" id="valor_total_geral" type="text" size="12" maxlength="10" readonly="readonly" value="<?php echo "R$ $total_geral";?>"></td> <script type="text/javascript"> var quant = document.getElementsByName("valor_dcto_fiscal[]"); var teste = []; function multiplica() { var soma = [].reduce.call(quant, function (somatorio, el) { return somatorio + parseFloat(el.value, 10) || 0; }, 0); var soma_arredonda = soma.toFixed(2); // Esse retorna 2 casas decimais document.getElementById("valor_total_geral").value = soma_arredonda; } </script> Se alguém puder sugerir algo, agradeço.
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.