Pagina 2 di 3 primaprima 1 2 3 ultimoultimo
Visualizzazione dei risultati da 11 a 20 su 26
  1. #11
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    356
    per capire bene quello che succede dovresti mettere anche il contenuto delle tabelle...
    Jekkil

  2. #12
    Utente bannato
    Registrato dal
    Mar 2011
    Messaggi
    389
    provo a riscrivere meglio quello che vorrei fare

    allora:

    io so di per certo che la mia tabella sarà popolata da 5 record per ogni torneo
    di ogni torneo voglio prelevare colui che ha il punteggio piu' alto


    quindi se avrò(faccio finta che siano 2 record per ogni torneo

    id_utente-|-torneo-|-punteggio
    000005 -|- ciauz -|- 54
    000006 -|- ciauz -|-23
    000005 -|- bau -|- 120
    000006 -|- bau -|- 150


    io vorrei stampare tramite il ciclo for(credo) gli ultimi 5 tornei vinti col punteggio più alto
    quindi

    000005 -|- ciauz -|- 54
    000006 -|-bau -|- 150

    per fare cio' deve per forza fare il distinct dei tornei e prelevare il MAX(punteggio) come logiga ci sta però non capisco perchè cavolo non va!

  3. #13
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    356
    ma nella tua query usi pure un'altra tabella: giudizio temporaneo...vorrei sapere il contenuto anche di questa per capire bene che combina la query
    Jekkil

  4. #14
    Utente bannato
    Registrato dal
    Mar 2011
    Messaggi
    389
    giudizio temporaneo è proprio quella che ho detto prima

    (

    id_utente-|-torneo-|-punteggio
    000005 -|- ciauz -|- 54
    000006 -|- ciauz -|-23
    000005 -|- bau -|- 120
    000006 -|- bau -|- 150



    )


    io la combinavo con la tabella user per estrarre il nome utente tramite l'id

  5. #15
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    356
    ok allora per il momento lasciamo stare la combinazione con l'altra tabella ok?

    se fai
    codice:
    SELECT id_utente, torneo, MAX(punteggio) as punteggio from giudizio_temporaneo GROUP BY torneo
    cosa ti esce?
    Jekkil

  6. #16
    Utente bannato
    Registrato dal
    Mar 2011
    Messaggi
    389
    è perfetto mi da i risultati attesi finalmente grazie mille


    ora devo solo combinare con la tabella user

    giudizio_temporaneo.id_utente=user.id

    giusto?

  7. #17
    Utente bannato
    Registrato dal
    Mar 2011
    Messaggi
    389
    anzi no non mi da i risultati attesi

    la tabella è composta cosi



    id_torneo torneo id_utente punteggio
    1 0000000008 10 80
    2 0000000008 6 80
    3 0000000008 7 80
    4 0000000008 8 120



    mi da come risultato

    0000000008 10 120



    la stanza e il punteggio è esatto, ma l'id utente no, è l'id_utente 8 ad aver fatto 120 di punteggio e non l'id_utente 10


    io tramite i tuoi consigli faccio cosi

    Codice PHP:
    $query_ultimi_win mysql_query("SELECT id_utente, torneo, MAX(punteggio) as punteggio from giudizio_temporaneo GROUP BY torneo"); 
    $lista_ultimi_win mysql_num_rows($query_ultimi_win);
    for(
    $x_ultimi_win=0;$x_ultimi_win<$lista_ultimi_win;$x_ultimi_win++){
    $tot_prova mysql_fetch_row($query_ultimi_win); 

     echo 
    "$tot_prova[0] $tot_prova[1] $tot_prova[2] 
    "
    ;        

                 
                 } 

  8. #18
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    356
    prova così:

    codice:
    SELECT * FROM nome_tabella WHERE punteggio = (SELECT MAX( punteggio ) FROM nome_tabella);
    Jekkil

  9. #19
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    356
    scusami, la query di prima è sbagliata!

    Questa funziona!!

    codice:
    SELECT * 
    FROM tabella WHERE (torneo, punteggio)
    IN (SELECT torneo, MAX( punteggio ) AS punteggio
    FROM tabella
    GROUP BY torneo)
    Jekkil

  10. #20
    Utente bannato
    Registrato dal
    Mar 2011
    Messaggi
    389
    jekkil intanto grazie per la costanza di come mi stai aiutando però non so come stampare la query che mi hai detto

    in pratica io faccio sempre cosi
    Codice PHP:

     $query 
    mysql_query("SELECT * FROM tabella  WHERE ecc ORDER by id DESC LIMIT 9");
                 
    $lista mysql_num_rows($query); 
                 for(
    $x=0;$x<$lista;$x++){
                 
    $dato mysql_fetch_assoc($query);

    la tua query cosi elaborata non l'ho mai fatta.....mi puoi dire anche come la stampo?

    grazie ciao

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.