Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] bestimmte Datensätze zählen

Einklappen

Neue Werbung 2019

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

  • choice
    hat ein Thema erstellt [Erledigt] bestimmte Datensätze zählen.

    [Erledigt] bestimmte Datensätze zählen

    Hallo, ich weiss nich, wie ich auf u.g. Ergebnis kommen soll. Womit fange ich an, was muss ich zuerst gruppieren, bzw. counten? Danke für die Hilfe.

    Code:
    tbl_Witze
    
    ID_WITZ	ID_WITZ_CAT	WITZ
    1	5	        Witz1
    2	5	        Witz2
    3	7	        Witz3
    4	2	        Witz4
    
    tbl_Witze_Cat
    
    ID_WITZ_CAT	WITZ_CAT
    1	        Arztwitz
    2	        Blondienen
    3	        Rentner
    4	        Polizei
    5	        Herren
    6	        Damen
    7	        Sonstiges
    8	        Sprüche
    
    Ergebnis Abfrage soll sein:
    
    MENGE	        WITZ_CAT
    0	        Arztwitz
    1	        Blondienen
    0	        Rentner
    0	        Polizei
    2	        Herren
    0	        Damen
    1	        Sonstiges
    0	        Sprüche

  • Gast-Avatar
    Ein Gast antwortete
    oder so..

    Code:
    CREATE TABLE tbl_witz_cat (
      id_witz_cat INT NOT NULL,
      witz_cat VARCHAR(20) NOT NULL,
      
      PRIMARY KEY (id_witz_cat)
    );
    
    
    INSERT INTO tbl_witz_cat VALUES 
    ( 1, 'A'),
    ( 2, 'B'),
    ( 3, 'R'),
    ( 4, 'P'),
    ( 5, 'H'),
    ( 6, 'D'),
    ( 7, 'So'),
    ( 8, 'Sp');
    
    CREATE TABLE tbl_witze (
     id_witz INT NOT NULL,
     id_witz_cat INT NOT NULL,
     
     PRIMARY KEY (id_witz),
     
     CONSTRAINT fk_tbl_witz_cat
      FOREIGN KEY (id_witz_cat)
       REFERENCES tbl_witz_cat (id_witz_cat)
     
    );
    
    INSERT INTO tbl_witze VALUES
    ( 1 , 5 ),
    ( 2 , 5 ),
    ( 3 , 7 ),
    ( 4 , 2 );
    
    
    SELECT COUNT(tw.id_witz) AS menge, 
           twc.witz_cat
      FROM tbl_witz_cat twc
      LEFT JOIN tbl_witze tw
        ON tw.id_witz_cat = twc.id_witz_cat
    GROUP BY twc.witz_cat
    ORDER BY twc.witz_cat;
    
    +-------+----------+
    | menge | witz_cat |
    +-------+----------+
    |     0 | A        |
    |     1 | B        |
    |     0 | D        |
    |     2 | H        |
    |     0 | P        |
    |     0 | R        |
    |     1 | So       |
    |     0 | Sp       |
    +-------+----------+
    8 rows in set (0.00 sec)
    
    mysql>
    Das Ergebnis ist jetzt nach witz_cat sortiert und entspricht nicht ganz Deinen Vorgaben aus #1). Wenn Du unbedingt diese Reihenfolge brauchst, dann benötigst Du noch ein weiteres Sortierkriterium.

    Grüße
    Thomas

    Einen Kommentar schreiben:


  • choice
    antwortet
    so gehts

    PHP-Code:
          $res aus tbl_Joke_Cat

          while ($row = mysql_fetch_array($res)) {
            $vartmp751  = $row['ID_Joke_Cat'];
            $vartmp752  = $row['JOKE_CAT_NAME'];

            $select = "SELECT COUNT(ID_Joke_Cat) AS ANZAHL_CAT";
            $from   = " FROM tbl_Joke";
            $where  = " WHERE ID_Joke_Cat = $vartmp751";
            $res_1 = query($select . $from . $where . " GROUP BY ID_Joke_Cat");
            $row_1 = mysql_fetch_array($res_1);
            $vartmp755  = $row_1['ANZAHL_CAT'];

            ?>
            <div>

              echo $vartmp751 . $vartmp755 . $vartmp752;

            </div>
            <?
          }

    Einen Kommentar schreiben:


  • nikosch
    antwortet
    Blondienen
    Aua. Selbst auch blond?

    Einen Kommentar schreiben:


  • drsoong
    antwortet
    Hi

    Guck mal hier: MySQL Datenbankhandbuch: MySQL Tutorial: Zhlen in Spalten Könnte weiterhelfen.

    Oder mal bei Google suchen nach: mysql kategorien zählen

    Einen Kommentar schreiben:

Lädt...
X