Announcement

Collapse
No announcement yet.

Sortierung gruppierten Blöcken

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

  • Sortierung gruppierten Blöcken

    Hallo Leute,

    mein erstes Problem ist eine knifflige Sortiergeschischte.

    Meine Abfrage sieht in etwa so aus:

    select S1, S2, S3, Sum(S4)
    from Tabelle xyz
    group by S1, S2, S3
    order by ????

    Sortiert hab ich in der Reihenfolge S1 asc, Summe desc.
    Alle gleichen S1 stehen zusammen in einem Block und deren Summe ist absteigend sortiert.

    Jetzt sollen die S1 Blöcke nochmal sortiert werden, sodass der Block mit der höchsten Gesamtsumme ganz oben staht.

    also so (alle d entsprechen einem Block, alle a einem Weitern, ...):

    S1--S2--S3--Sum
    ---------------------
    d --xx--a --10
    d --xx--b --8
    d --xx--c --2
    a --xx--a --5
    a --xx--b --4
    a --xx--c --1
    c --xx--a --4
    c --xx--b --4
    c --xx--c --1
    b --xx--a --3
    b --xx--b --1
    b --xx--c --1

    PS: Sollte auf Access97 funktionieren. Also keine Rollup, Cube, PLSQL oder order by (Subquery) Geschichten möglich.

    Grüße und schonmal Danke, SQLQS

  • #2
    Hallo SQLQS,

    mit folgendem Ansatz kommst Du vielleicht weiter:
    [highlight=SQL]order by (S1 = 'd'), S1, SUM(S4)[/highlight]
    Also sortierte zunächt nach dem Kriterium (S1 = 'd') ist TRUE/False und anschließend nach den weiteren Kriterien.
    Wer die höchste Summe hat, müsstest Du separat ermitteln (ginge auch in einem Statement, wäre aber etwas komplexer und ob Access damit klar kommt...).
    Olaf Helper

    <Blog> <Xing>
    * cogito ergo sum * errare humanum est * quote erat demonstrandum *
    Wenn ich denke, ist das ein Fehler und das beweise ich täglich

    Comment

    Working...
    X