benne: SQL: mehrere Tabellen untereinandern setzten

Hallo,

ich möchte mit einem SQL Befehl mehrere Tabellen untereinander auflisten, bzw. zu einer Tabelle zusammenfügen lassen, sodass ich sie hinterher gruppieren (GROUP BY) lassen kann. Kann mir jemand dabei helfen?

Dank,
Benne

  1. Hi,

    ich möchte mit einem SQL Befehl mehrere Tabellen untereinander auflisten, bzw. zu einer Tabelle zusammenfügen lassen, sodass ich sie hinterher gruppieren (GROUP BY) lassen kann. Kann mir jemand dabei helfen?

    UNION ALL und Subselects. Wenn Du aber mehrere Tabellen hast, die sich schematisch so sehr ähneln, dass dieses Vorhaben Sinn macht, ist mit höchster Wahrscheinlichkeit das DB-Layout falsch.

    Cheatah

  2. hi.

    imho kann man mit dem union-befehl tabellen aneinander hängen.

    select foo from bar
    union
    select moo from bla

    lg aw

    1. hi.

      Hallo

      imho kann man mit dem union-befehl tabellen aneinander hängen.

      select foo from bar
      union
      select moo from bla

      Habe ich auch schon versucht:

      SELECT * FROM Liste 1
      UNION
      SELECT * FROM Liste 2

      MySQL meldet:

      You have an error in your SQL syntax near 'UNION
      SELECT * FROM Liste 2 at line 2

      kann mir das jemand erklären?

      lg aw

      Benne

      1. Hallo,

        Wenn Du MySQL als DB verwendest, könnte es evtl. daran liegen, daß Du eine Version 3.* hast. Ich habe gerade gelesen, daß UNION erst ab Version 4.0 unterstützt wird.

        HTH

        Gruß Frank

        1. Hallo,

          Hi Frank

          Wenn Du MySQL als DB verwendest, könnte es evtl. daran liegen, daß Du eine Version 3.* hast. Ich habe gerade gelesen, daß UNION erst ab Version 4.0 unterstützt wird.

          ja ich habe leider mySQL 3.3...

          HTH

          Gruß Frank

          Trotzdem danke ;-)
          Benne

          1. Hallo,

            dann bliebe Dir die Möglichkeit, beide Abfragen in eine temporäre Tabelle umzuleiten und dann über diese Deine Abfrage zu machen.

            HTH

            Gruß Frank

            1. Hallo,

              hi

              dann bliebe Dir die Möglichkeit, beide Abfragen in eine temporäre Tabelle umzuleiten und dann über diese Deine Abfrage zu machen.

              ich wollte es gerade angfangen umzusetzten, indem ich Schichten (CREATE VIEW) benutze. Kann es sein, dass das von mysql 3.3 auch nicht unterstützt wird?

              HTH

              Gruß Frank

              Benne

              1. Hallo,

                In meiner frisch heruntergeladenen Übersetzung des MySQL-Handbuchs steht dazu folgendes:

                "MySQL unterstützt noch keine Sichten, aber wir planen, diese in Version 4.1 zu implementieren"

                [www.mysql.de]

                Da bleibt wohl wirklich nur eine temporäre Tabelle.

                Gruß Frank

      2. Hi,

        You have an error in your SQL syntax near 'UNION
        SELECT * FROM Liste 2 at line 2

        entweder ist "Liste 2" syntaktisch unkorrekt, oder die Tabellen unterscheiden sich strukturell und lassen sich daher nicht ohne weiteres in ein Ergebnisset mergen.

        Cheatah