fippus: Mysql Abfrage Problem

Hallo,
ich muss eine MYSQL Abfrage machen, in der ich ich eine Tabelle:

feld1  feld2
a        1.0
b        1.0
a        1.1
c        1.1
a        1.0
a        1.0

auswerten muss, so dass mir die Anzahl von
a 1.0  =>  also 3x
b 1.0  =>      1x
c 1.1  =>      1x

erscheint.

Wie muss die Abfrage  lauten?

SELECT feld1,count(feld1) AS C FROM tbl GROUP BY feld1 ORDER BY feld1 DESC

geht ja nicht.

Beste Grüsse
fippus

  1. Wie muss die Abfrage  lauten?

    SELECT feld1,count(1) AS C FROM tbl GROUP BY feld1 ORDER BY feld1 DESC

    1. Wie muss die Abfrage  lauten?

      SELECT feld1,count(1) AS C FROM tbl GROUP BY feld1 ORDER BY feld1 DESC

      Hallo,
      nein leider nicht, denn das würde das Ergebnis haben:

      a 4x
      b 1x
      c 1x

      statt

      a 1.0  =>  also 3x
      b 1.0  =>      1x
      c 1.1  =>      1x

      Das ist ja das Problem.

      Grüsse
      fippus

  2. Hallo.

    Ich sehe da v.a. ein logisches Problem. Was soll denn mit

    a        1.1

    passieren? Wenn Du nur bestimmte Feld-Wert-Kombinationen haben willst, dann müsstest Du das der DB auch sagen.
    Welche Werte sind denn in Feld2 überhaupt möglich? Oder worum geht es? Vielleicht findet sich ja eine Lösung wenn die Anwendung etwas klarer ist.

    Grüße aus Würzburg
    Julian

  3. Hallo,
    ich muss eine MYSQL Abfrage machen, in der ich ich eine Tabelle:

    feld1  feld2
    a        1.0
    b        1.0
    a        1.1
    c        1.1
    a        1.0
    a        1.0

    auswerten muss, so dass mir die Anzahl von
    a 1.0  =>  also 3x
    b 1.0  =>      1x
    c 1.1  =>      1x

    erscheint.

    Wie muss die Abfrage  lauten?

    SELECT feld1,count(feld1) AS C FROM tbl GROUP BY feld1 ORDER BY feld1 DESC

    geht ja nicht.

    Vermutlich könnte die Abfrage in dieser Form
    SELECT feld1,feld2,count(feld1) AS C FROM tbl GROUP BY feld1,feld2 ORDER BY feld1 DESC
    das gewollte Ergebnis bringen.

    Michael