Como é identificado o usuário? Descubra a posição do mesmo e então
mostre os N anteriores e N posteriores...

      SELECT rank_pos FROM vw_rank WHERE usuario = $USER;

      SELECT * FROM wv_rank OFFSET rank_pos -5 LIMIT rank_pos+5;

2008/9/23 Wagner Bonfiglio <[EMAIL PROTECTED]>

> Evandro e Rodrigo,
> vendo pelo que foi falado anteriormente acho que vou optar por fazer o
> cálculo do "ranking" na hora mesmo, pesquisando quantos usuários tem mais
> pontos que eu e assim determinando minha posição.
>
> Quanto a definir onde ficará a regra de negócio, no caso determinar a
> pontuação, vou deixar no banco mesmo, na hora do voto da pessoa acresce X à
> pontuação..
>
> E Rodrigo, quanto a onde deixar a pontuação vou acabar deixando na tabela
> usuários mesmo.. É que eu tenho um "problema" que é o modo de acesso ao
> banco.. Eu não tenho acesso direto pela aplicação, dependo de uma plataforma
> intermediária em XML, o que acaba limitando muito minhas ações no banco.
> Para esse caso eu teria que fazer uma requisição para pegar a pontuação do
> usuário, outra para definir quantas pessoas tem na frente dele.
> Ficando tudo na mesma tabela eu posso economizar a consulta de quantos
> pontos ele tem quando eu pego os dados básicos dele... Mas a sua afirmação é
> válida, deveria ficar em outra tabela para organizar melhor, mas como tenho
> esse XML no meio é melhor ficar com a situação menos organizada e
> possivelmente mais rápida!
>
>
> Mas obrigado pela ajuda de todos, farei os testes amanhã provavelmente e
> tendo algum problema reporto aqui! Mas acredito que o assunto esteja
> encerrado hehehe
>
> Valeu,
>     Wagner Mariotto Bonfiglio
>
>
> 2008/9/23 Rodrigo Marins <[EMAIL PROTECTED]>
>
>>  Bom, vejo dois problemas (ou melhor, dúvidas) ..
>>>>
>>>> - Um é que o ranking muda constantemente. Hoje eu tenho 70 pontos, e tem
>>>> 150 pessoas empatadas comigo, quando eu acerto mais uma vou dar um pulo no
>>>> ranking. Tem como fazer essa atualização em tempo real de forma rápida? Ou 
>>>> é
>>>> melhor atualizar a cada 2, 5, 24h?
>>>>
>>>
>> Olha só, você tem que definir onde irá colocar a regra de negocio na
>> aplicação, que poderá fazer os cálculos conforme ele vai respondendo as
>> questões ou vai colocar o negocio no banco ?
>>
>>
>>
>>>
>>>> - Outro ponto é: onde seria mais indicado colocar a pontuação e a
>>>> posição do usuário no ranking? Na própria tabela de usuários (esta tabela 
>>>> já
>>>> tem diversas informações, pois é um site sobre filmes, então tem número de
>>>> votos, número de comentários, além de informações como endereço, telefone,
>>>> etc.) ou seria melhor criar uma tabela com a pontuação e o ranking dos
>>>> usuários?
>>>>
>>>
>> Se você for modelar o banco o mais correto seria separar a informação em
>> tabelas distintas por diversos motivos.-> o principal organização..rsrs
>>
>>
>>>
>>>> Apenas para informação, atualmente eu tenho (envolvidos na quiz) a
>>>> tabela de usuários, a tabela onde realmente ficam as perguntas e uma tabela
>>>> que indica os votos das pessoas (idusuario = X, idtrivia = Y, voto = 3,
>>>> status = 0 ou 1, para certo ou errado).
>>>>
>>>
>> Acho correto agora, seria você criar uma tabela para os pontos.
>>
>> Bom, acho que esse é um problema de modelagem e sei como muitos não gostam
>>>> de discutir muito sobre isso, mas como não chega a ser a modelagem de um
>>>> sistema inteiro, e só uma pequena parcela, acho que alguns com mais
>>>> experiência no ramo possam me ajudar nisso tranquilamente! =)
>>>>
>>>
>> Existe varias maneira de você implementar isso.
>>
>> Espero te ajudado
>>
>> --
>> Rodrigo Marins
>> http://pgcon.postgresql.org.br/
>> http://portaldodesenvolvedor.com.br/
>>
>> _______________________________________________
>> pgbr-geral mailing list
>> [email protected]
>> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
>>
>>
>
> _______________________________________________
> pgbr-geral mailing list
> [email protected]
> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
>
>


-- 
William Leite Araújo
Analista de Banco de Dados - QualiConsult
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a