Visualizzazione risultati 1 fino 3 di 3

Discussione: COUNT, LEFT JOIN e GROUP BY, non restituiscono quello che vorrei

  1. #1
    Guest

    Predefinito COUNT, LEFT JOIN e GROUP BY, non restituiscono quello che vorrei

    Ragazzi, sto uscendo matto da questo portale, ma le soddisfazioni sono tantissime. Ecco qui la query che ho:
    Codice PHP:
    $sql = 'SELECT b.band_id, b.band_name, b.band_nation, b.band_add_time, b.band_view, b.band_add_id,
    u.username, u.user_colour,
    ue.username AS e_username, ue.user_colour AS e_user_colour,
    e.edit_time, e.edit_user,
    COUNT(f.fan_user) AS fans,
    COUNT(e.edit_band) AS edits
    FROM '
    . BANDS_TABLE . ' AS b
    LEFT JOIN '
    . USERS_TABLE . ' AS u
    ON b.band_add_id = u.user_id
    LEFT JOIN '
    . BANDS_FANS_BAND_TABLE . ' AS f
    ON f.fan_band = b.band_id
    LEFT JOIN '
    . BANDS_EDITS_TABLE . ' AS e
    ON e.edit_band = b.band_id
    AND b.band_last_edit = e.edit_time
    LEFT JOIN '
    . USERS_TABLE . ' AS ue ON e.edit_user = ue.user_id
    WHERE b.band_letter = \''
    . strtolower($_BAND['l']) . '\'
    GROUP BY b.band_id, e.edit_band'
    ;
    Fino ad ora restituisce tutto come vorrei, ma non mi stampa correttamente il'ultimo COUNT, che dovrebbe tornarmi 10 (10 perchè gli ho contati nella tabella), ma ritorna 1.

    Come posso fare per fare ciò che voglio? Devo contare in totale quante volte è ripetuto l'id nella tabella degli EDITS.

    Nel caso, si può ottimizzare la aquery riducendo le righe?

    Grazie in anticipo

  2. #2
    L'avatar di Xsescott
    Xsescott non è connesso AlterGuru
    Data registrazione
    08-02-2004
    Messaggi
    1,413

    Predefinito

    1 non ho capito cosa vuoi fare, 2 non voglio andare i analisi!! LOL
    "Quando il potere dell'amore supererà l'amore per il potere il mondo conoscerà la pace" Jimmy Hendrix


    [ Richiesta: http://www.unibologna.eu/ ] --> [Risposta: http://www.magazine.unibo.it/Magazin...al_Portale.htm Morale] -->[ http://www.anti-phishing.it/news/art...s.13062007.php ]
    consoliwebsite.altervista.org

  3. #3
    Guest

    Predefinito

    non vuoi andare dove?

    Comunque, dovrei contare nella tabella BDS_EDITS_TABLES, quante volte è ripetuto (COUNT(e.edit_band)) l'id (band_id) nel campo edit_band.

    Facendo come ho scritto su mi ritorna 1, ma dovrebbe essere 10.

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •