Fórum Conversão na divisão #477586
29/04/2014
0
select CAST(count(b1.idbrinquedo) / count(b2.idbrinquedo) AS DECIMAL ) * 100 AS PORCENTAGEM
FROM brinquedos b1
INNER JOIN brinquedos b2
on b1.idbrinquedo not like 'novo'
Nessa linha o resultado de count(b1.idbrinquedo) = 5 e count(b2.idbrinquedo) = 7, ou seja: 5 / 7, que dá 0,7142.
Só que o resultado está sendo 1, ou seja, o resultado ainda está em inteiro.
Se alguem puder me ajudar desde já agradeço a força!!!
Pedro Santos
Curtir tópico
+ 0Posts
30/04/2014
Marisiana Battistella
Vou dar uma idéia, não tenho o MySQL pra testar aqui...
Tenta converter os números separadamente e realiza o cálculo com os valores convertidos. Ficaria mais ou menos assim:
select ( CAST(count(b1.idbrinquedo) AS DECIMAL) / CAST( count(b2.idbrinquedo) AS DECIMAL ) ) * 100 AS PORCENTAGEM FROM brinquedos b1 INNER JOIN brinquedos b2 on b1.idbrinquedo not like 'novo'
Gostei + 0
30/04/2014
Alex Lekao
Eu sugiro tambem que faca as operacoes usando as separacoes de casas decimais nos divisores.
Nao sei se isso aconteca tambem no mysql, mas ja tive problemas com isso no SQL Server, fazia todo tipo de conversao de numero para la e para ca e nao dava certo, so passou a funcionar qdo usei uma separacao de decimas no divisor, por exemplo no lugar de 9999 / 8 usava 9999 / 8.000.
Comigo funcionou, talvez ajude.
Espero ter ajudado.
Abraco.
Alex - Lekao
Gostei + 0
30/04/2014
Pedro Santos
Esse negocio ta me tirando do sério ja!! rsrs
Gostei + 0
01/05/2014
Marisiana Battistella
As vezes a solução é simples mas nós que complicamos e não conseguimos enxergá-la. Isso porque nos concentramos nas soluções que achamos mais complicadas... =)
E outras vezes é o cansaço que já está tomando conta.
Gostei + 0
02/05/2014
William
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)