Torsten: Daten aus Datenbanken auslesen

Hallo,

ich habe das Problem, dass ich zwei Tabellen habe, wobei beide die gleichen Spalten haben. Ich möchte den gesammten Inhalt aus beiden Tabellen auslesen und dann sortieren.

Mit "selct * from tab1 order by name" kann ich die erste Tabelle auslesen und sortieren. Das gleiche kann ich mit der zweiten machen: "select * from tab2 order by name".

Wie kann ich aber die Daten aus beiden Tabellen auslesen und den gesamten Datensatz (und nicht nur den einer Tabelle) z.B. nach name sortieren?

Vielen Dank für Eure Hilfe!

Grüße,
Torsten

  1. Hallo Torsten,

    die Frage ist, wie stehen die Tabellen zueinander. Stehen Sie in irgendeinem Zusammenhang zu einander, so sollte ein Join funktionieren. So ermittelt

    Select * from tabelle1,tabelle2 where tabelle1.name=tabelle2.name order by tabelle1.name

    alle Daten zu Sätzen mit jeweils gleichem Wert für name aus beiden Tabellen.

    Gruß Ralf

    1. Hallo!

      @Klaus
      Das verwendete Datenbanksystem ist mySQL (eine 3er-Version). Dort gibt es soweit ich weiß auch den Befehl union, dieser funktioniert aber erst ab Version 4, oder liege ich da falsch?

      @Ralf
      Ein Join funktioniert meiner Meinung nach nicht, da die Tabellen in keinem wirklichen Zusammenhang stehen. tab2 ist sozusagen die Fortsetzung von tab1.

      Für weitere Postings wäre ich also dankbar ...

      1. Hallo,

        Das verwendete Datenbanksystem ist mySQL (eine 3er-Version).

        Aah, interessant;-)

        Dort gibt es soweit ich weiß auch den Befehl union, dieser funktioniert aber erst ab Version 4, oder liege ich da falsch?

        Nein, siehe http://www.mysql.com/doc/en/UNION.html. Ebenda gibt es bei den Usercomments auhc einen Link auf ein Tutorial, wie man UNION mit mySQL 3.x emulieren kann. Wie gut der Vorschlag ist, kann ich nicht beantworten, da ich selten mit mySQL arbeite.

        BTW: Lesen bildet und Online-Dokumentationen sind nicht nur dafür da, den Festplattenherstellern mehr Einnahmen zu sichern *g*.

        Grüße
          Klaus

        1. Hallo,

          Nein, siehe http://www.mysql.com/doc/en/UNION.html. Ebenda gibt es bei den Usercomments auhc einen Link auf ein Tutorial, wie man UNION mit mySQL 3.x emulieren kann. Wie gut der Vorschlag ist, kann ich nicht beantworten, da ich selten mit mySQL arbeite.

          Mit zwei Tabellen funktioniert es. Allerdings bekomme ich z.B. bei drei Tabellen einen Fehler, da man die beschriebene IFNULL-Anweisung nur mit zwei Argumenten verwenden kann. Oder sehe ich das falsch?

          Torsten

  2. Hallo,

    ich habe das Problem, dass ich zwei Tabellen habe, wobei beide die gleichen Spalten haben. Ich möchte den gesammten Inhalt aus beiden Tabellen auslesen und dann sortieren.

    Da Du uns das verwendete Datenbanksystem nicht verraten hast, nehme ich einmal an, Du verwendest Oracle. Also kannst Du die beiden Statements einfach mit UNION verknüpfen.

    Grüße
      Klaus