(MySQL) Ausgabe von COUNT(*)
Sven
- php
Hallo,
ich habe folgende Abfrage:
SELECT A.tbl1, A.tbl2, COUNT(B.tbl3)
FROM table1 AS A
JOIN table2 AS B
ON B.tbl3 = A.id
GROUP BY B.tbl3
Die Abfrage funktioniert, die ausgegebene Tabelle sieht in etwa so aus:
tbl1 tbl2 COUNT(B.tbl3)
eintrag1 test1 5
eintrag2 test2 2
Mein PHP-Code dazu, um die Tabelle auszugeben:
$sql = "SELECT A.tbl1, A.tbl2, COUNT(B.tbl3)
FROM table1 AS A
JOIN table2 AS B
ON B.tbl3 = A.id
GROUP BY B.tbl3";
$res = mysql_query($sql);
while($row = mysql_fetch_array($res)) {
echo $row['tbl1']."\n";
echo $row['tbl2']."\n";
echo $row['COUNT(B.tbl3)']."\n";
}
Die dritte echo-Zeile ist fehlerhaft. Aber wie kann ich diese Zahl in PHP ansprechen? Wie kann ich das COUNT ausgeben?
Grüße
Sven
Mahlzeit Sven,
Die dritte echo-Zeile ist fehlerhaft. Aber wie kann ich diese Zahl in PHP ansprechen? Wie kann ich das COUNT ausgeben?
Gib der Spalte doch einfach einen aussagekräftigen Alias-Namen ...
MfG,
EKKi
Die dritte echo-Zeile ist fehlerhaft. Aber wie kann ich diese Zahl in PHP ansprechen? Wie kann ich das COUNT ausgeben?
Spontan: weise dem COUNT() ein Alias zu.
Moin
Aber wie kann ich diese Zahl in PHP ansprechen? Wie kann ich das COUNT ausgeben?
Indem du dieser in der Feldauflistung im MySQL-Statement ein Alias zuweist:
$sql = "SELECT A.tbl1, A.tbl2, COUNT(B.tbl3) anzahl
FROM table1 AS A...
echo $row['anzahl']."\n";
Gruß Bobby
Hola.
Och. Da gibts verschiedene Moeglichkeiten. Zuerstmal koenntest Du deinen Feldern huebsche Namen geben und diese benutzen. Dannn koenntest Du auch einfach den numerischen Index benutzen. Der sollte ja da sein. Ich sehe nciht, dass Du ihn abschaltest:
echo $row[x]
Da Du Dir aber ja mysql_fetch_array() aus der Doku herausgesucht und diese auch gelesen hast, weisst Du das aber doch schon? ;)