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

    Recupero dati dopo query con union e count

    Ciao ragazzi, mi sto confondendo in un bicchiere d'acqua! (odio il lunedì! :berto: )

    Ho fatto la seguente query:

    $query_happy = "SELECT COUNT (autoeval) FROM user_cp_1 WHERE utente = '$user[username]' AND autoeval = 'happy'
    UNION
    SELECT COUNT (autoeval) FROM user_cp_gen WHERE utente = '$user[username]' AND autoeval = 'happy'";

    $result = mysql_query($query_happy, $db);

    Come faccio a recuperare i due valori del count?

    Non posso usare mysql_fetch_row...
    :master:

  2. #2
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    gli assegni un alias
    SELECT COUNT (autoeval) as conto FROM user_cp_1 WHERE utente = '$user[username]' AND autoeval = 'happy'
    UNION
    SELECT COUNT (autoeval) as conto FROM user_cp_gen WHERE utente = '$user[username]' AND autoeval = 'happy'

  3. #3
    perche nn fai due query separate se ti versono i due valori?

    UNION nn capisco che c'entra

  4. #4
    Ok, gli assegnato un alias... quindi result a cosa è uguale?

    $result = ???

    Non le faccio separate perché devo sommare i due valori che sono della stessa tipologia...

  5. #5
    E te li sommi dopo , quale' i l problema?

  6. #6
    Non c'è un problema... ma siamo qui per imparare no?

    (e poi in realtà quella query è la prima di una lunga serie e voglio capire come risparmiare in codice & risorse)

  7. #7
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    Se la tua versione di mysql supporta le subquery puoi anche avere direttamente il totale

    codice:
    select sum(conto) as totale from (
    SELECT COUNT (autoeval) as conto FROM user_cp_1 WHERE utente = '$user[username]' AND autoeval = 'happy'
    UNION
    SELECT COUNT (autoeval) as conto FROM user_cp_gen WHERE utente = '$user[username]' AND autoeval = 'happy') as tabDeriv
    il risultato lo trovi nell'alias totale e per rispondere alla tua domanda di prima lo recuperi allo stesso modo in cui recuperi tutti i dati dalle query.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.