wie ist es möglich zwei Werte unterschiedlicher Zeilen gegeneinander auszuwerten?

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

  • wie ist es möglich zwei Werte unterschiedlicher Zeilen gegeneinander auszuwerten?

    Wonach muss ich da suchen?

  • #2
    Isn Witz oder?

    Kommentar


    • #3
      ich meinte zeilen die aus einer MySql Tabelle ausgelesen werden

      Es lag da wohl ein missverständnis vor.

      Kommentar


      • #4
        Re: ich meinte zeilen die aus einer MySql Tabelle ausgelesen werden

        mfg - sagg

        Kommentar


        • #5
          INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


          Kommentar


          • #6
            Welches Ziel verfolgst du? (Problembeschreibung)
            Wie hast du versucht? (Lösungsansatz)

            So völlig ohne Informationen kann man nur "2 Queries" in den Raum werfen.

            Kommentar


            • #7
              ich möchte eine statistische Auswertung durchführen...

              Die Werte folgender Tabelle sollen ausgewertet werden:

              12 14
              14 17
              12 14
              12 14
              12 18

              ich möchte zeigen, dass die fixe Zahl 12 häufiger gemeinsam mit 14 auftritt als mit 18. Es soll für diese Tabelle der Wert 14 errechnet werden.

              Ich habe hier einen ersten Ansatz
              Leider ist die Lösung für die Auswertung größerer Datenmengen unbrauchbar. Gibt es da eine bessere Lösung?
              <?php
              include 'mysql.inc.php';
              include 'connect.php';

              $sql = "SELECT
              COUNT(id2) as anzahl,
              SUM(id2) as summe
              FROM
              ids
              WHERE id1 = '12'
              GROUP BY id2
              ;";
              $result = mysql_query($sql) OR die (mysql_error());
              while($row = mysql_fetch_assoc($result))
              {
              if(!isset($wert1))
              {
              $anzahl1 = $row['anzahl'];
              $wert1 = $row['summe'] /$anzahl1;
              } else {
              $anzahl2 = $row['anzahl'];
              $wert2 = $row['summe']/$anzahl2;
              }
              }

              if($anzahl1 > $anzahl2)
              {
              echo $wert1;
              } else {
              echo $wert2;
              }


              ?>

              Kommentar


              • #8
                Okay, jetzt wissen wir doch schonmal, worum es geht. Als nächstes lernen wir die PHP-Tags des Forums kennen. Danke.

                Ich würde dein Problem so angehen:

                SELECT (SELECT COUNT(id1) ... WHERE id1 = 12 AND id2 = 14) > (SELECT COUNT(id1) ... WHERE id1 = 12 AND id2 = 18)

                Das sollte 1 oder 0 zurückgeben, aber ich bin mir gar nicht sicher, ob an dieser Stelle Subqueries zulässig sind. Wenn nicht, kannst du auch einfach

                (SELECT COUNT(id1) ... WHERE id1 = 12 AND id2 = 14) UNION
                (SELECT COUNT(id1) ... WHERE id1 = 12 AND id2 = 18)

                ausführen und die zwei Werte vergleichen.

                Kommentar


                • #9
                  vielen dank für die Hilfe, leider trifft

                  Dein Vorschlag nicht genau mein Problem. Es ist nämlich so, dass nur ein Wert bekannt ist, also der Wert 12, und alle anderen Werte erschlossen werden müssen.

                  Kommentar


                  • #10
                    Bietet sich hier nicht folgendes Schema an?

                    tabelle(id1, id2, counter)
                    12 14 3
                    14 17 1
                    12 18 1

                    Kommentar


                    • #11
                      ich glaube nicht damit ist ja das Problem nur verlagert

                      wenn man hier nur 10 Artikel hat muss man 100 Fälle unterscheiden, dass ist fast nicht machbar.

                      Kommentar


                      • #12
                        Um dein Vorhaben den anderen ein bischen genauer zu erklären, verweise ich mal auf diesen Thread, wo das Problem schonmal angeschnitten wurde.
                        mfg - sagg

                        Kommentar


                        • #13
                          Den anderen Thread kannte ich nicht. Danke dafür.
                          Allerdings widerspricht dort nichts dem o.g. Schema. Also bleibe ich dabei: Schema ändern, dann klappts mit links.

                          Kommentar

                          Lädt...
                          X