PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Count ()


NanoCyte
27.02.2004, 17:04:10
ich bräuchte mal ne kurze Hilfe und hät dann da noch ne Frage:
also:
-wie funktioniert das jetzt genau mit den expr da drin.
-kann man damit auch noch was anderes machen aus nur die gesamtzeilenzahl auszugeben(zB die zeilen im ergebnis zählen, die einen bestimmten wert eines feldes haben) ? (beispiel wäre: Ich will die zeilen, in der die parent-id = 2 wäre, aber das ergebnis gibt alle zeilen aus)

feuervogel
27.02.2004, 19:20:05
http://de.php.net/count

was willst du jetzt genau wissen?

welche zeilen in welchem ergebnis? was hat count() mit einer parent-id zu tun? was für ein ergebnis?

NanoCyte
28.02.2004, 11:27:46
ähm, ich meinte die MySQL-Funktion COUNT (), deswegen hab ich es auch in dem Forum gepostet

nen beispiel:

Tabelle:
id | parentid | value
1 | 0 | forum1
2 | 0 | forum2
3 | 1 | subforum1
4 | 2 | subforum2


ich will jetzt zwar alle einlesen, aber auch wissen, wieviele von diesen Ergebnissen die parentid 1 haben, ohne dass ich das mit ner schleife in php selbst lösen muss

Yzerman
28.02.2004, 19:44:50
Das kannst Du natürlich in einer Abfrage lösen. Ich denke aber, das macht aus Performance-Gründen keinen Sinn, da in jedem Ergebnis-Tupel dann die Summe auftaucht.

Ich würde das ganze über zwei Queries lösen.

NanoCyte
29.02.2004, 23:23:23
ok, hatte gedacht, das würde vielleicht so besser gehen
trotzdem danke

feuervogel
01.03.2004, 01:37:49
ja, sowas wollte ein freund von mir auch heute wissen, daher hab ich mich damit mal genauer beschäftigt...

versuch das ganze mal in verbindung mit "GROUP BY"

also schreib mal:

$sql = "SELECT COUNT( * ), parentid FROM table GROUP BY parentid";
$qry = mysql_query( $sql );
$result = mysql_fetch_array( $qry );

echo "<pre>";
print_r( $result );
echo "</pre>";

schau mal was da passiert...ist das, was du willst?

NanoCyte
02.03.2004, 00:34:51
das bringt schon den ersten schritt, aber ich hab das jetzt mit zwei querys gelöst und es funzt perfekt. aber an dem GROUP BY werd ich dranbleiben...