Gesamtzahl der Frauen aus der Spalte "Geschlecht" ermitteln?

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

  • Gesamtzahl der Frauen aus der Spalte "Geschlecht" ermitteln?

    Hi,

    ich möchte aus der Spalte "Geschlecht" die Gesamtzahl der Männer und die Gesamtzahl der Frauen ermitteln.

    Das Ergebnis sollte etwa so aussehen:

    Insgesammt: 32
    Frauen: 12
    Männer: 20


    Kann mir bitte jemand einen Tipp geben wie die Abfrage dafür aussehen sollte?

    Danke

  • #2
    Code:
    SELECT Geschlecht, COUNT(*) AS Anzahl
    FROM Tabelle
    GROUP BY Geschlecht
    Und das + wirst du in PHP erledigen können
    Wir werden alle sterben

    Kommentar


    • #3
      Code:
      select count(*) as num from table group by gender;
      Den Rest kannst du dann mit PHP aufdröseln.

      Edit: @combie
      [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
      Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
      Super, danke!
      [/COLOR]

      Kommentar


      • #4
        Zitat von AmicaNoctis Beitrag anzeigen
        Code:
        select count(*) as num from table group by gender;
        Den Rest kannst du dann mit PHP aufdröseln.

        Edit: @combie
        Danke für die Blumen...
        Und wenn du ähnliches vorschlägst gibts wohl keine bessere/einfachere Alternative....
        Wir werden alle sterben

        Kommentar


        • #5
          Danke für eure Antworten.
          Ich habe das Ganze erstmal so gelöst (bestimmt nicht die beste Lösung):
          PHP-Code:
          $query "SELECT geschlecht, COUNT(*) AS total 
              FROM jos_ckforms_1 
              GROUP BY geschlecht ORDER by total
              "
          ;
              
              
          $result = @mysql_query($query$connect) OR die( mysql_error() );

              while ( 
          $row mysql_fetch_object($result) ) 
              { 
               echo 
          "$row->geschlecht: ";
               echo 
          "$row->total<br>"
              } 
          Das klappt auch.
          Die Spalte "geschlecht" ist aber nur eine Spalte von insgesamt 10 Spalten, die alle so behandelt werden müssen.
          Deswegen möchte ich statt Spaltennamen eine Variable einsetzten. (Also der user wählt welche Spalte er an die Abfrage schicken möchte ).

          Also um das zu lösen habe ich den Spaltenname aus dem Beispiel nämlich "geschlecht" durch die Variable $spalte ersetzt und die Abfrage wie folgt umgeschrieben:
          PHP-Code:
          $query "SELECT $spalte, COUNT(*) AS total 
              FROM jos_ckforms_1 
              GROUP BY 
          $spalte ORDER by total
              "
          ;
              
              
          $result = @mysql_query($query$connect) OR die( mysql_error() );

              while ( 
          $row mysql_fetch_object($result) ) 
              { 
               echo 
          "$row->$spalte: ";
               echo 
          "$row->total<br>"
              } 
          Es klappt aber nicht. Die Query erzeugt folgende Fehlermeldung:

          Catchable fatal error: Object of class stdClass could not be converted to string in / .....report.php on line 69
          und das ist die Zeile 69:
          [COLOR="Red"]echo "$row->$spalte: ";[/COLOR]

          Was mache ich falsch?

          Danke

          Kommentar


          • #6
            Herrje....
            PHP-Code:
            $query "SELECT $spalte AS Spalte, COUNT(*) AS total  
                FROM jos_ckforms_1  
                GROUP BY 
            $spalte ORDER by total 
                "

                 
                
            $result = @mysql_query($query$connect) OR die( mysql_error() ); 

                while ( 
            $row mysql_fetch_object($result) )  
                {  
                 echo 
            $row->Spalte .": "
                 echo 
            $row->total  ."<br>";  
                } 
            Wir werden alle sterben

            Kommentar


            • #7
              Hallo,

              das ist einer der vielen Gründe, warum man keine Variablen in Strings benutzen soll. Verkette die Variablen vernünftig und es wird funktionieren.

              Beispiel:
              PHP-Code:
              echo("Ausgabe: " $myObj->$dynProperty "\n";) 
              Edit: Wieder zu langsam...

              Dann erwähne ich wenigstens noch, dass du damit die Leuchtreklame "Ich will gehackt werden" raushängst. Informiere dich über SQL-Injections.

              Gruß,

              Amica
              Zuletzt geändert von AmicaNoctis; 02.02.2010, 11:35.
              [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
              Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
              Super, danke!
              [/COLOR]

              Kommentar


              • #8

                Besten Dank für eure Antworten. Damit klappt es wunderbar.
                Dass ich nach mehrere Stunden rumprobieren das nicht selbst hingekriegt habe, ist mir wohl ein Rätsel.
                Es zeigt aber wie wenig ich von Programmieren verstehe

                Dann erwähne ich wenigstens noch, dass du damit die Leuchtreklame "Ich will gehackt werden" raushängst. Informiere dich über SQL-Injections.
                Nein, bitte ich will nicht gehackt werden. Aber ich habe keine Ahnung, wo ich die Leuchtreklame ausgehängt habe!
                Bitte was sollte ich da beachten?

                Kommentar


                • #9
                  Zitat von bigtail Beitrag anzeigen
                  Nein, bitte ich will nicht gehackt werden. Aber ich habe keine Ahnung, wo ich die Leuchtreklame ausgehängt habe!
                  Bitte was sollte ich da beachten?
                  SQL-Injection
                  [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
                  Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
                  Super, danke!
                  [/COLOR]

                  Kommentar

                  Lädt...
                  X