toem99: Tabellen Summen und Gruppen

Guten Morgen Leute,
bevor mich jetzt direkt jemand nieder macht und sagt, schreib Dein Select um: Das geht nicht. Ich erhalte die Daten so und muss diese verarbeiten.

Ich bekomme also z.B. folgende Sätze:

lfd.Nr   Art         Menge
1        USD         100.000
2        DOL          87.000
3        USD          70.000
4        MUS         125.000

Hat jemand eine Idee, wie ich die Daten nun in einer Tabelle gruppiert und summiert angezeigt bekomme? Also so?

Art         Menge
USD         170.000
DOL          87.000
MUS         125.000

Ich wäre für Tips sehr dankbar.

  1. echo $begrüßung;

    bevor mich jetzt direkt jemand nieder macht und sagt, schreib Dein Select um: Das geht nicht.

    Ein neues Statement schreiben und das alte in Frieden lassen geht nicht?

    Hat jemand eine Idee, wie ich die Daten nun in einer Tabelle gruppiert und summiert angezeigt bekomme?

    Ja, durchlaufe deine Daten. Leg eine neue Datenstruktur an, die "Art" als Schlüssel hat. Wenn ein Schlüsselwert noch nicht vorhanden ist, leg ihn an und speichere den Mengenwert. Wenn er vorhanden ist, addiere den Mengenwert.

    echo "$verabschiedung $name";

    1. also: ich mach mir so ne Struktur:

      this.test = [
        nr = 0,
        art = "",
        menge = 0
      ]

      und schreib da die Daten rein. Richtig?
      Wäre dann in etwa so:

      var arrayLenght = (this.test.lenght);
       var _found = 0;
       if (arrayLenght > 1)
       {
        for(var i = 0; i < arrayLenght; ++i)
        {
         if (this.test[i].Nr = pos.id)
          _found = 1;
        }
        if (_found == 0)
        {
         this.test[arrayLenght] = pos.id;
        }
       }
       else
       {
        this.test[0].Nr = pos.id;
       }

      Da schreibt der auch rein. Aber wie ermittel ich die Anzahl der Einträge?
      Via this.test.lenght bekomm ich drei. Also die Anzahl meiner Werte (Nr, Art und Menge).

      Mensch ist das ein Mist

      1. also: ich mach mir so ne Struktur:
        und schreib da die Daten rein. Richtig?

        Nicht wirklich. Was soll das denn mal werden?

        Wie sieht denn dein ursprüngliches "SELECT" aus, welches du nicht gewillt bist zu ändern?

        Frank

        1. also: ich mach mir so ne Struktur:
          und schreib da die Daten rein. Richtig?

          Nicht wirklich. Was soll das denn mal werden?

          Wie sieht denn dein ursprüngliches "SELECT" aus, welches du nicht gewillt bist zu ändern?

          Frank

          Les doch bitte mal mein erstes Posting. Ich bekomm die Daten vom Kunden und der ist nicht gewillt zu ändern. Okay jetzt?

          1. Les doch bitte mal mein erstes Posting. Ich bekomm die Daten vom Kunden und der ist nicht gewillt zu ändern. Okay jetzt?

            Wie, was "Okay jetzt?" ... möchtest du Hilfe oder nicht?

            Du gibst nicht mal vernünftig Auskunft, wie/wodurch/welcher Form du die Daten bekommst. Einziger Anhaltspunkt ist "SELECT" ...

            ... ohne Arme keine Kekse ...

            Frank

      2. echo $begrüßung;

        Aber wie ermittel ich die Anzahl der Einträge?

        Wenn du die auch noch willst, dann mach ein weiteres Feld, das du hochzählst.

        also: ich mach mir so ne Struktur:
        this.test = [
          nr = 0,
          art = "",
          menge = 0
        ]

        Nein, ich meinte eher so eine Struktur:

        struktur[art] = { menge: menge, anzahl: 1 }

        Wenn struktur[art] vorhanden ist, addiere die Mengen und zähl anzahl eins hoch.

        echo "$verabschiedung $name";

        1. Nein, ich meinte eher so eine Struktur:

          struktur[art] = { menge: menge, anzahl: 1 }

          Wenn struktur[art] vorhanden ist, addiere die Mengen und zähl anzahl eins hoch.

          Wie definiere ich denn so eine Struktur. Wenn ich es so mache wie Du schreibst erhalte ich nur: struktur is not defined

          1. echo $begrüßung;

            Nein, ich meinte eher so eine Struktur:
              struktur[art] = { menge: menge, anzahl: 1 }
            Wie definiere ich denn so eine Struktur. Wenn ich es so mache wie Du schreibst erhalte ich nur: struktur is not defined

            So wie es deine Programmiersprache erfordert. Wenn du eine konkrete Antwort haben möchtest, müsstest du dazu konkrete Angaben machen.

            echo "$verabschiedung $name";

            1. So wie es deine Programmiersprache erfordert. Wenn du eine konkrete Antwort haben möchtest, müsstest du dazu konkrete Angaben machen.

              na,
              also ich arbeite mit html und javascript

              1. echo $begrüßung;

                So wie es deine Programmiersprache erfordert. Wenn du eine konkrete Antwort haben möchtest, müsstest du dazu konkrete Angaben machen.
                also ich arbeite mit html und javascript

                Dann sortiere ich das mal richtig ein, damit sich die besser damit auskennenden angesprochen fühlen.

                echo "$verabschiedung $name";

                1. Hallo,

                  Nun dann würde man das etwa so machen:

                    
                  var tabelle = [  
                    {art: USD, wert: 123},  
                    {art: MUS, wert: 345}  
                  ];  
                    
                  var ergebnis = {};  
                    
                  for (var i = i; i < tabelle.length; ++i) {  
                    var eintrag = ergebnis[tabelle[i].art];  
                    if (eintrag) {  
                      eintrag.wert += tabelle[i].wert;  
                      ++eintrag.anzahl;  
                    } else {  
                      ergebnis[tabelle[i].art] = {wert: tabelle[i].wert, anzahl: 1};  
                    }  
                  }  
                  
                  

                  Disclaimer: Möglicherweise enthaltene Fehler dienen lediglich pädagogischen Zwecken ;-)

                  Grüße

                  Daniel