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

    Ordine per quantità di gruppo (SQL)

    Ho cercato nel forum ma non ho trovato qualcosa che corrispondesse.... allora chiedo:

    Ho questa query, che mi estrae dei gruppi e la quantità di utenti di questi gruppi, tutto ok fino a qua.

    Codice PHP:
    $sql "SELECT ";
    $sql .= " G.Id";
    $sql .= ", G.gruppo";
    $sql .= ", COUNT(U.gruppo) AS quatita";
    $sql .= ", G.gruppo AS nome_gruppo";
    $sql .= " FROM news_utenti AS U ";
    $sql .= " INNER JOIN news_gruppi AS G ON U.gruppo = G.Id ";
    $sql .= " GROUP BY U.gruppo, G.gruppo, G.Id";
    $sql .= " [b]ORDER BY U.gruppo[/b]  LIMIT.......; 
    Vorrei però ordinare per la quantità di ogni gruppo

    adesso mi esce così

    gruppo1 - 5
    gruppo2 - 2
    gruppo3 - 7
    gruppo4 - 6

    Vorrei così

    gruppo2 - 2
    gruppo1 - 5
    gruppo4 - 6
    gruppo3 - 7



    Dove metto le mani?




    Grazie

    oaiC

  2. #2
    easy

    basta fare " order by quatita asc "

  3. #3
    Magari, avevo già provato, mi da "colonna non esistente"

    oaiC

  4. #4
    Utente di HTML.it L'avatar di luca200
    Registrato dal
    Apr 2002
    Messaggi
    4,120
    ORDER BY COUNT(U.gruppo)

  5. #5

  6. #6
    Per altri motivi ho dovuto modificare la query e il problema non è più presente...


    Cmq con i sugerimento di luca mi da: "Invalid use of group function"

    Uso MySQL 4.1.10


    Adesso rimane più una curiosità che una necessità

    Grazie
    oaiC

  7. #7
    Utente di HTML.it L'avatar di luca200
    Registrato dal
    Apr 2002
    Messaggi
    4,120
    In effetti tu fai un GROUP BY U.Gruppo, ma quella colonna non è presente nella Select, anzi ci applichi sopra una funzione di colonna. Non ha un gran senso.

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.