Announcement

Collapse
No announcement yet.

Komplexe Gruppierung

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Komplexe Gruppierung

    Hallo an Alle,

    ich habe leider ein Problem bei einer etwas komplexeren Gruppierung und hoffe, dass jemand die Lösung dazu hat.

    Im Anhang ist links die Ausgangssituation und rechts soll das Ergebnis sein, habe versucht mein Problem anhand dieses kleinen Szenario darzustellen.

    Das Problem habe ich bei der Gruppierung der Nummern, z.B. Produkt 1 Nummer 2 bis 4 und Produktnummer 1 Nummer 7 sollen in zwei Zeilen aufgelistet werden.

    Ich bekomme derzeit immer nur eine Zeile mit Produkt 1 Nummer 2 bis 7 angezeigt

    Hat jemand eine Idee, wie nur aneinanderhängende Nummern gruppiert werden können?

    Danke im Voraus!

    Gruß
    Attached Files

  • #2
    ich werde wohl nicht um einen Cursor umherkommen und es damit nun versuchen

    Comment


    • #3
      Eine allgemeine Lösung ist für das Problem nicht das einfachste. Kann es auch für eine spezielle DB sein?
      Gruß, defo

      Comment


      • #4
        habe nun gesagt bekommen, dass Cursor vermieden werden sollen. werde mir meine Daten nun in eine temporäre Tabelle laden, da ein Feld hinten dran legen und Schritt für Schritt durchgehen.

        @defo: Arbeite auf einem MSSQL Server 2008.

        Comment


        • #5
          Wieso soll Cursor vermieden werden? Und was soll das sein, wenn Du da Schritt für Schritt durchgehst, ist das kein Cursor?
          Die Frage ist doch m.E. geht es mit reinem SQL oder muss man eine SP bauen?
          Gruß, defo

          Comment


          • #6
            ein Cursor soll von der Performance nicht der beste sein und sollte ein Fehler in der Schleife auftauchen, würde ich in meiner temporären Tabelle sehen, welche Einträge schon bearbeitet wurden und welche noch ausstehen.

            ich gedenke, meinen Code in eine SP zu bauen und diese dann mir den gewünschten Parametern aufzurufen.

            die linke Tabelle im Anhang von Post 1 wäre meine temporäre Tabelle.
            der erste Eintrag würde in eine zweite Tabelle übernommen werden, dann die zweite Zeile mit damit verglichen, wenn die Angaben, bis auf Nummer gleich sind, würde die Nummer an die erste Zeile angehangen (also dann Nummern: 1-2) wenn nicht, würde ein neuer Eintrag generiert und so weiter..

            Comment


            • #7
              Achso, also Du willst keinen Cursor auf den Echtdaten, sondern einen Cursor auf den Tempdaten, die dann sogar noch in einem extra Feld markieren kannst?
              Dann würde ich aber empfehlen, das Flagfeld nicht als Kriterium in die Cursormenge aufzunehmen.
              Gruß, defo

              Comment


              • #8
                Originally posted by defo View Post
                Achso, also Du willst keinen Cursor auf den Echtdaten, sondern einen Cursor auf den Tempdaten, die dann sogar noch in einem extra Feld markieren kannst?
                Dann würde ich aber empfehlen, das Flagfeld nicht als Kriterium in die Cursormenge aufzunehmen.
                ja/nein

                soll Aufgrund der Performance die Curser-Funktion nicht verwenden und baue mir selbst eine Schleife.

                Ich bastel mal ein bisschen, mal sehen was dabei raus kommt

                Comment

                Working...
                X