Announcement

Collapse
No announcement yet.

Zwei Tabellen kombiniert Sortieren

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

  • Zwei Tabellen kombiniert Sortieren

    Hi,

    ich habe zwei Tabelle aus denen ich jeweils eine Spalte auslese. Jetzt sollen diese Spalten jeweils sortiert werden u anschließend untereinander als Ausgabe kombiniert werden.

    Beispiel:

    Tabelle1: Tabelle2:
    ID Wert1 ID Wert2
    1 23 1 Müller
    2 35 2 Richard
    3 12 3 Hans
    4 8

    Die Ausgabe soll dann folgendermaßen ausssehen:
    Ausgabe:
    Hans
    Müller
    Richard
    8
    12
    23
    35

    Problem ist unter anderem, das Wert1 ein Integer ist und Wert2 ist ein String.

  • #2
    Ja mit Hilfe eines Union:

    select Spalte2 from Tabelle1
    union
    select Spalte2 from Tabelle2;

    natürlich unter der Voraussetzung das die werte von Tabelle1 auch Strings sind.

    Comment


    • #3
      Mit union hab ich es als erstes versucht. Nur klappt das dann mit der Sortierung der Zahlen nicht, weil die Werte alle als String behandelt werden.

      Comment


      • #4
        Welches DBMS?

        Comment


        • #5
          Hallo,

          wenn man den UNION noch mit zwei Subselects versieht, dann müßte es klappen:
          [highlight=sql]
          select 2, tab1.* from (select to_char(Wert1) from Tabelle1 order by Wert1) tab1
          union all
          select 1, tab2.* from (select Wert2 from Tabelle2 order by Wert2) tab2
          order by 1
          [/highlight]

          Gruß Falk
          Wenn du denkst du hast alle Bugs gefunden, dann ist das ein Bug in deiner Denksoftware.

          Quellcode ohne ein Mindestmaß an Formatierung sehe ich mir nicht an! Ich leiste keinen Privatsupport per Mail oder PN!

          Comment


          • #6
            Dann muss das DBMS aber Derived Tables unterstützen. deshalb meine Frage nach dem DBMS

            Comment


            • #7
              Access (Office XP)

              Comment


              • #8
                Ich hab jetzt den SQL Statement folgendermaßen formuliert:
                CODE]
                SELECT Wert1 FROM (SELECT Tabelle1.Wert1 FROM Tabelle1 GROUP BY Tabelle1.Wert1 ORDER BY Tabelle1.Wert1) UNION ALL SELECT Wert2 FROM (SELECT Tabelle2.Wert2
                FROM Tabelle2 GROUP BY Tabelle2.Wert2 ORDER BY Tabelle2.Wert2);
                [/CODE]

                Allerdings ist es noch nciht ganz perfekt. Er hängt mir die Werte von der Tabelle2 (Wert2 ist String) unten an die Werte von Tabelle1 (Wert1 ist Integer) an. Gibt es eine kreative Möglichkeit, die String Werte ob anzufügen?

                Comment


                • #9
                  Eifach den union umdrehen

                  Comment


                  • #10
                    Stimmt da hätte ich auch selber drauf kommen können...

                    Comment

                    Working...
                    X