Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    [SQL] prendere il maggiore

    Ciao a tutti, ho una tabella del genere:

    giocatore - presidente - offerta - ...
    giocatore - presidente - offerta - ...
    giocatore - presidente - offerta - ...

    in cui il giocatore ovviamente può anche essere uguale ad altri.
    Dovrei farmi restituire dalla query una tabella in cui sono contenuti TUTTI i giocatori però DISTINCT prendendo come distinct il giocatore che ha il valore dell'offerta più alto rispetto alle altre righe della tabella che contengono lo stesso giocatore.
    Come posso fare??Sono stato abbastanza chiaro? Please Help!

  2. #2
    Puoi fare in questo modo:

    SELECT giocatore, max(offerta)
    FROM tab_giocatori
    GROUP BY giocatore
    Realizzazione Software, Siti Web ed E-commerce. Consulenza Software ed esperti open source ...
    Scopri i nostri servizi...

  3. #3
    Utente di HTML.it L'avatar di echoweb
    Registrato dal
    Sep 2008
    Messaggi
    419
    Prova a fare un esempio di tabella e un esempio di quello che ti aspetti....
    Forse così sei più chiaro


    "Non soffocare la tua ispirazione e la tua immaginazione,
    non diventare lo schiavo del tuo modello"

    Vincent van Gogh

  4. #4
    ci siamo quasi..ma non ancora.
    Ho scritto qst:
    $SQLQuery = "SELECT offerte.giocatore,MAX(offerte.offerta) AS offerta,offerte.numero,offerte.data,offerte.id_ute nte,
    utenti.id, utenti.nome
    FROM offerte LEFT JOIN utenti ON offerte.id_utente=utenti.id
    GROUP BY offerte.giocatore";

    Praticamente ho due tabelle..unite dalla join una contenente gli utenti (Del quale ho il codice della tabella offerte) che devo recuperare x avere informazioni per esempio sul nome.

    la tabella offerte è:
    id_utente giocatore offerta data
    1 del piero 10 xxx
    2 del piero 20 xxx
    1 vieri 1 xxx
    3 vieri 4 xxx

    la tabella utenti
    id nome ect..
    1 mario
    2 antonio
    3 alessio

    io dovrei ottenere:

    del piero 20 antonio
    vieri 4 alessio

    Ora si è capito?Spero davvero di si grazie x l'aiuto!

  5. #5
    Utente di HTML.it L'avatar di echoweb
    Registrato dal
    Sep 2008
    Messaggi
    419
    Originariamente inviato da jed84
    ci siamo quasi..ma non ancora.
    Ho scritto qst:
    $SQLQuery = "SELECT offerte.giocatore,MAX(offerte.offerta) AS offerta,offerte.numero,offerte.data,offerte.id_ute nte,
    utenti.id, utenti.nome
    FROM offerte LEFT JOIN utenti ON offerte.id_utente=utenti.id
    GROUP BY offerte.giocatore";

    Praticamente ho due tabelle..unite dalla join una contenente gli utenti (Del quale ho il codice della tabella offerte) che devo recuperare x avere informazioni per esempio sul nome.

    la tabella offerte è:
    id_utente giocatore offerta data
    1 del piero 10 xxx
    2 del piero 20 xxx
    1 vieri 1 xxx
    3 vieri 4 xxx

    la tabella utenti
    id nome ect..
    1 mario
    2 antonio
    3 alessio

    io dovrei ottenere:

    del piero 20 antonio
    vieri 4 alessio

    Ora si è capito?Spero davvero di si grazie x l'aiuto!
    Ciao,

    prova così:

    codice:
    SELECT offerte.giocatore,offerte.offerta,utenti.nome
    FROM offerte,utenti
    WHERE 
    offerte.id_utente=utenti.id
    AND offerte.offerta IN
    (SELECT MAX(offerte.offerta) FROM offerte
    LEFT JOIN utenti ON offerte.id_utente=utenti.id GROUP BY offerte.giocatore
    )


    "Non soffocare la tua ispirazione e la tua immaginazione,
    non diventare lo schiavo del tuo modello"

    Vincent van Gogh

  6. #6
    ...grazie ma non funge ancora! che query complicata..

  7. #7
    Utente di HTML.it L'avatar di echoweb
    Registrato dal
    Sep 2008
    Messaggi
    419
    La query che ti ho passato, a me funziona benissimo, altrimenti non te l'avrei postata.

    Verifica che nel database, che il campo ID e OFFERTA siano INT....

    :master:


    "Non soffocare la tua ispirazione e la tua immaginazione,
    non diventare lo schiavo del tuo modello"

    Vincent van Gogh

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.