19-08-2010, 12:50 AM
je suis loin d etre super pro en sql
mais tu dois avoir moyen d'obtenir à partir de la table
joueur id, type classe, points
une requete ou table (grosso modo la manière dont tu fais actuellement avec des colonnes, d ailleurs je serais intéressé de savoir comment tu calcules la place de chaque joueur) :
joueur id, type classement, points, classement
une fois arrivé là tu devrais être capable par une seule requête de ramener
10 gus avant / après le joueur voulu par type de classement (where id joueur = xxx and type de classement = yyy)
voire même en une seule requête ramener la sélection qui t intéresse pour tous les types de classement d'un coup
mais je me suis jamais penché sur les classements en tant que tel, du coup comme je n arrive pas à visualiser les requêtes que tu as du faire pour obtenir les résultats, je ne sais pas trop comment "ajouter" la transformation de colonne (tes trois classements) en ligne. Pourrais tu montrer tes requêtes (d'une ça me fera progresser, deux j'aurais certainement une meilleure réponse après, mais demain ^^ )
mais tu dois avoir moyen d'obtenir à partir de la table
joueur id, type classe, points
une requete ou table (grosso modo la manière dont tu fais actuellement avec des colonnes, d ailleurs je serais intéressé de savoir comment tu calcules la place de chaque joueur) :
joueur id, type classement, points, classement
une fois arrivé là tu devrais être capable par une seule requête de ramener
10 gus avant / après le joueur voulu par type de classement (where id joueur = xxx and type de classement = yyy)
voire même en une seule requête ramener la sélection qui t intéresse pour tous les types de classement d'un coup
mais je me suis jamais penché sur les classements en tant que tel, du coup comme je n arrive pas à visualiser les requêtes que tu as du faire pour obtenir les résultats, je ne sais pas trop comment "ajouter" la transformation de colonne (tes trois classements) en ligne. Pourrais tu montrer tes requêtes (d'une ça me fera progresser, deux j'aurais certainement une meilleure réponse après, mais demain ^^ )