Ir para conteúdo

Arquivado

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

marceloy

Consulta de valor float

Recommended Posts

Bom pessoal, não tenho mto conhecimento em mysql.

(Procurei por algo no fórum mas não encontrei.)

 

Digamos que na minha base, tenho um campo valor do tipo float e um registo com valor igual a 294.41

 

Este registro existe, porém quando executo:

 

SELECT * FROM tabela WHERE valor = '294.41'

 

o MySQL não me retorna nenhum resultado.

 

 

A nível de teste fiz:

SELECT * FROM tabela WHERE valor LIKE '%294.41%'

e

SELECT * FROM tabela WHERE valor BETWEEN '294.40' AND '294.42'

 

e o MySQL me retorna o registro.

 

 

Como devo proceder para realizar uma consulta na forma valor = '294.41' ? :mellow:

 

Obrigado desde já.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Já tentei sim Douglas,WHERE VALOR = '294.41'WHERE VALOR = 294.41(Nenhum resultado)WHERE VALOR = '294,41'(Retorna todos os valores iguais a 294)WHERE VALOR = 294.41(Erro de sintaxe)obs: as consultas estão sendo feitas pelo phpMyAdmin.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sinceramente não sei, fiz um teste aqui com uma tabela que tenho e deu certo:

SELECT * FROM `tabela` where `campo` = 364.75

Meu campo é float, fiz no phpmyadmin, e você ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Meu campo também é float e fiz a consulta no phpMyAdmin.

Mas com esse exemplo que me passou a base me retorna 'zero resultados'.

 

 

Não sei se ajuda, mas vai algumas especificações da tabela:

Tipo da Tabela: InnoDb

Collation: latin1_swedish_ci

 

 

Ah, lembrando, o campo float está no formato padrão, ou seja, não está especificado tamanho (m, n).

Compartilhar este post


Link para o post
Compartilhar em outros sites

Represtação precisa de valores monetários é um problema comum. No MySQL você deve usar o tipo DECIMAL. Ele armazena uma string, então nenhuma perda de precisão deve ocorrer. Se a precisão não é tão importante, o tipo DOUBLE pode ser satisfatório.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

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