Kai: union vs. order by??

Hey!

bei mir vertragen sich union und order by nicht - wie stell ich dass an, dass sich also eine union menge ordnet, meinetwegen auch jede menge für sich?

Danke,

Kai

  1. Hallo,

    Hey!

    bei mir vertragen sich union und order by nicht - wie stell ich dass an, dass sich also eine union menge ordnet, meinetwegen auch jede menge für sich?

    Ich kann dir nur eine Lösung für Oracle vorschlagen, auch wenn du vielleicht MySQL hast und ich nicht weiß, was da so alles geht:

    SELECT *
    FROM   ( Abfrage 1
             UNION
             Abfrage 2
           ) abfrage
    ORDER BY abfrage.spalte

    Grüße
    Marcus

    --
    Wenn der Weg das Ziel ist, ist das Ziel dann weg?
  2. Hallo Kai,

    bei mir vertragen sich union und order by nicht - wie stell ich dass an, dass sich also eine union menge ordnet, meinetwegen auch jede menge für sich?

    welches Datenbankmanagementsystem verwendest Du (mit Angabe der Version)?
    Gib bitte ein Beispiel an, d.h. die SQL-Anweisung, die von Dir verwendeten Datentypen, das von Dir erwartete Ergebnis und das Resultat, das Du erhältst.

    Je drei bis vier Datensätze, d.h. so sechs bis acht im Gesamtresultat sollten reichen. Auf nicht relevante Spalten kannst Du verzichten. MS Access (ab Version 2.0) z.B. hat keine Probleme mit UNION und ORDER BY, das weiß ich noch. MS SQL-Server (7.0 und neuer) ebenfalls nicht.

    Freundliche Grüße

    Vinzenz

  3. Hey!

    bei mir vertragen sich union und order by nicht - wie stell ich dass an, dass sich also eine union menge ordnet, meinetwegen auch jede menge für sich?

    Jede Menge für sich dürfte schwierig werden, order by ist eigentlich nur hinter der letzte Query erlaubt und wirkt dann auf die Gesamtmenge.

    Beispiel:

    SELECT ...
      FROM ...
      ...
      -- kein Order by!
    UNION
    SELECT ...
       FROM ...
    ORDER BY ...

    Wäre natürlich sinnvoll, wenn die Spaltennamen in allen Teilen vorkommen.

    Gruss Daniela