Eu gostaria de pegar os valores de idades do DB e exibir os mais comuns. Média é algo muito irreal em estatística, porque se um fulaninho lá de 08 anos se cadastra num DB que só tem coroa, ele vai acabar abalando com a média. Entende? Eu queria algo mais real, e pra isso tinha pensado nessa idéia de "moda".
Acho que a melhor forma de expressar seria com a palavra "relevância". Eu quero exibir as idades mais relevantes, as que mais tem a ver, as que realmente são as mais comuns no DB.
Supondo-se que meu DB tem lá 10 cadastrados, com as idades:
#id #idade
1 56
2 48
3 65
4 44
5 49
6 57
7 12
8 109 59
10 47
De média isso daria 44 anos, mas o que eu gostaria mesmo é mostar os resultados mais comuns. No caso do exemplo o público alvo seria 45-60 anos (queria mostrar algo assim, mas fazer a busca por essa "relevância" eu não sei como fazer).
Talvez tu pudesse me ajudar a fazer uma função que faça isso:
Como sempre vão ser dois dígitos de idade, a função pegaria o valor 1 (o da esquerda) e se fosse o numero 5 por exemplo acrescentaria + 1 a var5. A var com mais numeros seria a mais relevante, com isso caso a var5 ganhasse por exemplo (tivesse maior valor), idades entre 50 e 60 seriam as mais relevantes.
exemplificando:
se a idade for 55, entao var5 = var 5 + 1. Se a idade for 52, mesma coisa (pq tem o 5 na esquerda). E assim por diante, e no final uma verificação da var com maior numero. Só que essa "var5" e etc seria criada dinamicamente e nao manualmente (isso eu nao sei fazer).
EDIT:desenvolvi o seguinte código com esse raciocínio, mas dá err
<%
'idade = "54" 'FONTE
For idade = 20 to 40
tamanho = Len(idade)
Select Case tamanho
Case 1
idadeest = idade
case 2
idadeest = Left(idade, 1)
Case 3
idadeest = Left(idade, 2)
End Select
if Eval("var" & idadeest) <> "" then
Eval("var" & idadeest) = Eval("var" & idadeest) + 1
else
Eval("var" & idadeest) = 0
end if
response.write Eval("var" & idadeest) & "<BR>"
Next
%>
Dá esse erro:
Tipos incompatíveis: 'Eval'
Ajudaaaa
Edição feita por: Firehalk, 03/04/2007, 14:13.