Komplexes SQL-Stmt mit Group by / Count

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Komplexes SQL-Stmt mit Group by / Count

    Hallo zusammen,

    ich hänge hier an einem SQL-Statement und komme nicht weiter bzw. Ich bin mir nicht sicher, ob man das überhaupt mit einer einzigen DB-Anfrage hinbekommt.... das ist nämlich mein Ziel.

    Dies ist meine DB-Struktur:

    Projekt
    ------
    ID
    NAME
    STATUS_ID
    KATEGORIE_ID

    Kategorie
    --------
    ID
    NAME

    Status
    -----
    ID
    NAME


    So, ich hätte jetzt gerne alle Kategorien mit der Anzahl der darin vorhandenen Projekte:

    PHP-Code:
    SELECT kategorie.nameCOUNT(projekt.id) AS projekte_in_kat FROM kategorieprojekt WHERE kategorie.id projekt.kategorie_id GROUP BY projekt.kategorie_id 
    Das funktioniert auch.
    Zusätzlich interessiert mich noch die Anzahl der Projekte je Status (in jeder einzelnen Kategorie). Also das Ergebnis sollte etwa so ausshen:
    PHP-Code:
    Kategorie.name      projekte_in_kat    projekte_status_a    projekte_status_b
    ---------------------------------------------------------------
    Software               41                    11                      30
    Hardware                25                    12                     13 
    Hat da jemand einen Ansatz?
    Vielen Dank schon mal im Voraus,

    Patrick.

  • #2
    SUM

    Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

    bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
    Wie man Fragen richtig stellt

    Kommentar


    • #3
      Danke, habs allerdings so gelöst:

      SELECT kategorie_id, status_id, count(*) as zahl FROM projekt GROUP BY kategorie_id, status_id WITH ROLLUP

      gruss patrick

      Kommentar

      Lädt...
      X