jo: ORDER BY mit GROUP BY kombinieren

hallo,

habe eine table "model"

das feld "brand_id"  ist eine parent id, und somit ein verweis auf eine andere table.
"model_bez" ist der name des models, also text.

wie lässt sich ORDER BY mit GROUP BY kombinieren ?

ich würde gerne alle brand_id gruppieren und innerhalb nach alphabet ordnen !

ist das möglich ?

mein aktueller query:

  
$q="SELECT `id`,`brand_id`,`model_bez` FROM `model` ORDER BY `model_bez`  ASC";  

gruß

jo

  1. Hallo Jo,

    habe eine table "model"

    das feld "brand_id"  ist eine parent id, und somit ein verweis auf eine andere table.
    "model_bez" ist der name des models, also text.

    ich vermute, dass verschiedene Datensätze mit gleicher "brand_id" verschiedene Werte im Feld "model_bez" haben können.

    wie lässt sich ORDER BY mit GROUP BY kombinieren ?

    Problemlos:

      
    GROUP BY foo  
    ORDER BY bar
    

    dabei kommt in allen mir bekannten SQL-Dialekten die GROUP-BY-Klausel zwingend vor der ORDER-BY-Klausel.

    ich würde gerne alle brand_id gruppieren und innerhalb nach alphabet ordnen !

    Ich vermute, Du möchtest alle Modellbezeichnungen der gleichen Marke zusammen haben und innerhalb der Marke alphabetisch aufsteigend sortiert?

    ist das möglich ?

    Ja.

    mein aktueller query:

    $q="SELECT id,brand_id,model_bez FROM model ORDER BY model_bez  ASC";

      
    Nach id dürftest Du nicht gruppieren können, da id wohl jeden Datensatz eindeutig kennzeichnet, also raus damit. ASC ist die Standardsortierreihenfolge und somit überflüssig.  
      
    Du möchtest nach brand\_id und model\_bez gruppieren und zuerst nach brand\_id, dann nach model\_bez sortieren:  
      
    ~~~sql
      
    SELECT  
        brand_id,  
        model_bez  
    FROM  
        model  
    GROUP BY brand_id, model_bez  
    ORDER BY brand_id, model_bez
    

    Freundliche Grüße

    Vinzenz

    1. hallo,

      SELECT
          brand_id,
          model_bez
      FROM
          model
      GROUP BY brand_id, model_bez
      ORDER BY brand_id, model_bez

        
        
      genau so wollte ich das haben.  
        
      danke und ein schönes wochenende