[MySQL 3.23.X] Statistik - Auswertung

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [MySQL 3.23.X] Statistik - Auswertung

    Hallo,

    hab eine Tabelle mit ca. 50 Spalten. Alle vom Typ ENUM = 'N','Y'
    Nun möchte ich gerne eine statistische Auswertung haben welche Datensätze Y haben und welche N haben. - in Prozent

    Also "gesamt / datensatz bei dem Y ist * 100"
    und "gesamt / datensatz bei dem N ist * 100"

    Das ganze sollte in einem Qry passieren da ich bei jeder Abfrage die IDs der Datensätze angeben muß die im Suchergebnis enthalten sein sollen. Momentan maximal 3000. -> also WHERE id = x OR id = x OR id = x etc.

    Jemand eine Idee?
    Grüsse,
    Sebastian


    Profil Flex Freelancer
    Twitter twitter.com/flashhilfe
    Web Flash und Flex Community

  • #2
    Re: [MySQL 3.23.X] Statistik - Auswertung

    count(enumfeld) group by enumfeld ermittelt dir, wie viele DS es zu jeder ausprägung gibt.
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      Danke für deine Antwort. Für einen einzelnen Datensatz funktioniert das, aber wie mach ich das mit mehreren Spalten?

      SELECT count( spalte1 ), count(spalte2)
      FROM tabelle GROUP BY spalte1, spalte2

      gibt mir ein falsches Ergebniss aus.
      Grüsse,
      Sebastian


      Profil Flex Freelancer
      Twitter twitter.com/flashhilfe
      Web Flash und Flex Community

      Kommentar


      • #4
        Original geschrieben von Sebastian W
        Danke für deine Antwort. Für einen einzelnen Datensatz funktioniert das, aber wie mach ich das mit mehreren Spalten?
        ach so, dass du da 50 stück von hast, hab ich übersehen ...

        dann funktioniert das mit dem group by natürlich nicht mehr, weil dann ja von allen datensätzen mit identischer kombination immer nur einer ausgewertet wird ...

        dann würde ich an deiner stelle doch eher scriptseitig die zählung durchführen.
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          du könntest dir evtl. mit
          Code:
          SUM(IF(enumfeld1 = 'J', 1, 0))
          behelfen

          andere spalten dann analog
          Ich denke, also bin ich. - Einige sind trotzdem...

          Kommentar


          • #6
            Danke euch beiden.

            SELECT SUM(
            IF ( spalte1 = 'Y', 1, 0 ) ) AS a_Y , SUM(
            IF ( spalte1 = 'N', 1, 0 ) ) AS a_N
            FROM tabelle

            ... das wird ne Menge mit 50 spalten. Aber was solls, so gehts. ... die arme MySQL DB )

            Nachtrag:
            Nach N abzufragen macht wenig Sinn merk ich grad
            Also:
            SELECT SUM(
            IF ( spalte1 = 'Y', 1, 0 ) ) AS a
            FROM tabelle

            $mit_y = $daten['a'];
            $mit_n = $gesamt - $daten['a'];
            Zuletzt geändert von Sebastian W; 02.09.2004, 14:53.
            Grüsse,
            Sebastian


            Profil Flex Freelancer
            Twitter twitter.com/flashhilfe
            Web Flash und Flex Community

            Kommentar

            Lädt...
            X