Forum Doku Wiki Blog

Forumsarchiv 2004, Juli
Mysql - Übereinstimmungen finden und zählen

archivierte Beiträge lesen

  1. (DATENBANK) Mysql - Übereinstimmungen finden und zählen von Mark, 13. 07. 2004, 09:38

Mysql - Übereinstimmungen finden und zählen

Der folgende Beitrag wurde am 13. 07. 2004, 09:38 Uhr von Mark veröffentlicht.

Hallo Ihrs,

Ich vesuche es mal auf den Punkt zu bringen...

-----------
| spalte  |
-----------
|   1     |
-----------
|   2     |
-----------
|   1     |
-----------
|   3     |
-----------
|   2     |
-----------
|   1     |
-----------

Die 1 kommt also dreimal, die 2 zweimal und die 3 kommt einmal vor.
Wie komme ich mit "einer" Abfrage an die Anzahl der Treffer? Als Wert kommen immer nur 1,2 oder 3 in Frage.

Gruss und danke, Mark

Mysql - Übereinstimmungen finden und zählen

Der folgende Beitrag wurde am 13. 07. 2004, 09:51 Uhr von Frank (no reg) veröffentlicht.

Hi

SELECT spalte, Count(spalte) Treffer
FROM tabelle
GROUPY BY spalte

-> du solltest dich in Zukunft doch mal mit dem Thema Aggregats- und Gruppierungsfunktionen unter ANSI SQL '92 auseinandersetzen. Dazu gibt es reichlich Bücher.

Viele Grüße,
Frank

Mysql - Übereinstimmungen finden und zählen

Der folgende Beitrag wurde am 13. 07. 2004, 11:10 Uhr von Mark veröffentlicht.

> SELECT spalte, Count(spalte) Treffer
> FROM tabelle
> GROUPY BY spalte

Hallo Frank,

danke erstmal!

der GROUPY war gut, damit muss man erst einmal rechnen *g*

So weit war ich schon, die Abfrage liefert mir aber nur die Anzahl derer mit dem Wert 1, nicht jedoch die mit 2 und 3

Gruss, Mark

Mysql - Übereinstimmungen finden und zählen

Der folgende Beitrag wurde am 13. 07. 2004, 11:32 Uhr von Thomas Meinike veröffentlicht.

Hallo,

> So weit war ich schon, die Abfrage liefert mir aber nur die Anzahl derer mit dem Wert 1, nicht jedoch die mit 2 und 3

Mit den genannten Daten sollte diese Abfrage

mysql> SELECT feld,COUNT(feld) FROM tabelle GROUP BY feld;

zu diesem Ergebnis

+------+-------------+
| feld | COUNT(feld) |
+------+-------------+
|    1 |           3 |
|    2 |           2 |
|    3 |           1 |
+------+-------------+

fuehren.

MfG, Thomas

Mysql - Übereinstimmungen finden und zählen

Der folgende Beitrag wurde am 13. 07. 2004, 12:41 Uhr von Mark veröffentlicht.

Hallo,

$mysql="SELECT feld,COUNT(feld) Treffer FROM tabelle GROUP BY feld";
$result=mysql_query($mysql, $con);
$ergebnis=mysql_fetch_array($result)

foreach($ergebnis as $key => $value)
{
echo $key . ":" . $value;
}

dann bekomme ich nur:

0:1
feld:1
1:129
Treffer:129

Da fehlen mir also noch die Ergebnisse von 2 und 3.

Gruss

Mysql - Übereinstimmungen finden und zählen

Der folgende Beitrag wurde am 13. 07. 2004, 14:16 Uhr von Thomas Meinike veröffentlicht.

Hallo,

> $result=mysql_query($mysql, $con);
> $ergebnis=mysql_fetch_array($result)
>
> foreach($ergebnis as $key => $value)
> {
> echo $key . ":" . $value;
> }
>
> dann bekomme ich nur:
>
> 0:1
> feld:1
> 1:129
> Treffer:129
>
> Da fehlen mir also noch die Ergebnisse von 2 und 3.

Du fragst auch nur einen Datensatz ab. Lege mal eine while-Schleife um den foreach-Ausdruck.

Ich erhalte mit

while($zeile=mysql_fetch_array($result))
{
  print $zeile["feld"]." : ".$zeile["Treffer"]."<br>\n";
}

die Ausgabe

1 : 3
2 : 2
3 : 1

MfG, Thomas

Mysql - Übereinstimmungen finden und zählen

Der folgende Beitrag wurde am 14. 07. 2004, 10:06 Uhr von Mark veröffentlicht.

Hallo Thomas,

vielen Dank, die Whileschleife war also mein Problem. Habe an der falschen Stelle nach dem Fehler gesucht.

Es funktioniert jetzt einwandfrei..., danke nochmal :)

Gruss, Mark

© 1998-2013 SELFHTMLImpressumSoftware: Classic Forum 3.4