Zählen von Group By Abfragen

teqqy

Aktives Mitglied
Thread Starter
Dabei seit
13.06.2006
Beiträge
1.010
Reaktionspunkte
27
Hallo,

ich habe in einer SQL Tabelle eine Spalte vom Typ "DATETIME". Diese möchte ich nach Monaten gruppiert und ausgegeben haben, wie viele Zeilen pro Monat es gibt.

Das Gruppieren pro Monat habe ich mittels substr gelöst. Allerdings fehlt mir jetzt noch das zählen der Zeilen. Mit count() funktioniert es nicht, da er immer den Wert 1 liefert und nicht den richtigen Wert. mysql_num_rows() funktioniert auch nicht.

Könnte mir einer einen Denkanstoß geben wie ich auf die richtige Lösung komme? Danke!:cake:
 

msslovi0

Aktives Mitglied
Dabei seit
20.03.2005
Beiträge
2.726
Reaktionspunkte
117
Code:
select date_format(a.created, "%m"), count(distinct(a.id)) from table a group by date_format(a.created, "%m");

created ist dabei dein DATETIME-Feld, id ist der Primärschlüssel. table ist die Tabelle.
 

teqqy

Aktives Mitglied
Thread Starter
Dabei seit
13.06.2006
Beiträge
1.010
Reaktionspunkte
27
Hallo,
danke schon mal für die Hilfe. Leider funktioniert das noch nicht ganz. Ich habe jetzt deinen Vorschlag an meine Gegebenheiten angepasst und es sieht nun so aus:
PHP:
            <?php
				$sql = "select date_format(a.post_date, '%m'), 
						count(distinct(a.post_id))
						from posts as a 
						group by date_format(a.post_date, '%m')";

				$result = mysql_query($sql);
				echo $result;
			?>
Ich lasse jetzt erst einfach mal alles ausgeben ohne irgendwas damit anzustellen um zu gucken ob es funktioniert. Aber leider bekomme ich folgende Meldung:
Es scheint also dann wohl noch nicht ganz zu funktionieren. Wenn mir jemand noch grad helfen könnte, wäre das toll :cake:
 

Stacki

Mitglied
Dabei seit
04.12.2006
Beiträge
215
Reaktionspunkte
4
Probier mal die Daten in eine "echte" Tabelle zu schreiben und dann zu zählen.

Gruß,
Stacki
 
Oben