WCM Forum

WCM Forum (http://www.wcm.at/forum/index.php)
-   Programmierung (http://www.wcm.at/forum/forumdisplay.php?f=17)
-   -   MYSQL: zusammenfügen zweier tabelleninhalte (http://www.wcm.at/forum/showthread.php?t=124274)

RaistlinMajere 04.02.2004 19:39

MYSQL: zusammenfügen zweier tabelleninhalte
 
ich möchte aus 2 tables, in denen sich jeweils 2 felder mit den selben namen (also in beiden tables, natürlich nicht in derselben) befinden, hintereinander daten auslesen und das ergebnis dann sortieren.
habe mich bereits bzgl. JOINS eingelesen, doch das dürfte wohl nicht das sein, was ich brauche, da ich keine kombination zwischen den tableinhalten wünsche. ich brauche lediglich ein "lies die feld1-feld2-tupel aus beiden tables und sortiere das gesamtergebnis nach feld1".

applikationsseitig ist das ganze kein problem, nur wie komme ich zu so etwas, wenn ich es db-seitig lösen will?

pc.net 04.02.2004 20:15

distinct eliminiert doppelte einträge ...
Code:

select distinct t1.spalte1,
                t1.spalte2,
                t2.spalte2
from tabelle1 t1,
    tabelle2 t2
where t1.spalte1 = t2.spalte1
order by t1.spalte1


frazzz 04.02.2004 20:18

Zitat:

Original geschrieben von pc.net
distinct eliminiert doppelte einträge ...
Code:

select distinct t1.spalte1,
                t1.spalte2,
                t2.spalte2
from tabelle1 t1,
    tabelle2 t2
where t1.spalte1 = t2.spalte1
order by t1.spalte1


ich glaub fragender spricht english :D

wird er mit deinem statement ned weid kommen :p

pc.net 04.02.2004 20:21

Zitat:

Original geschrieben von frazzz
ich glaub fragender spricht english :D

wird er mit deinem statement ned weid kommen :p

:confused:

frazzz 04.02.2004 20:23

is mysql mehrsprachig, versteht eine englische installation deutsche abfragen? :eek:

pc.net 04.02.2004 20:26

Zitat:

Original geschrieben von frazzz
is mysql mehrsprachig, versteht eine englische installation deutsche abfragen? :eek:
die abfrage ist international gleich ...

bis auf spalten und tabellennamen ... die gehören an die entsprechenden vorhandenen datenbank-objekte angepaßt :p

RaistlinMajere 04.02.2004 20:30

danke, aber du hast mich leider falsch verstanden, es gibt keine doppelten einträge. was du mir geraten hast, ist, soweit ich das sehe, eben ein join, aber der hilft mir denke ich nicht weiter, da ich an keiner kombination zwischen einzelnen einträgen interessiert bin. ich möchte lediglich die reihentupel aus den beiden tables nach feld1 sortiert auslesen (und zwar nicht nach jenem feld1 von table1 oder 2, sondern das gesamtergebnis soll sortiert werden).

die aufgabe ist im grunde simpel: ich brauche ein select-statement, das mir die folgenden tables:
Code:

table1: & table2:
 feld1 feld2    feld1 feld2
+-----+-----+  +-----+-----+
|a    |hinz |  |d    |franz|
|g    |kunz |  |f    |karli|
+-----+-----+  +-----+-----+

zu sowas zusammenfügt:
 feld1 feld2
+-----+-----+
|a    |hinz |
|d    |franz|
|f    |karli|
|g    |kunz |
+-----+-----+


frazzz 04.02.2004 20:35

ich faule sau geh von c&p aus :p


allerdings ist das ein join, was rastin will.
der sort erfolgt im 2. schritt nach der ergebniss tabelle :D

pc.net 04.02.2004 20:42

@RaistlinMajere
ah, verstehe ...

du willst UNION verwenden ...
Code:

select feld1, feld2
from table1
union
select feld1, feld2
from table2
order by feld1, feld2

http://www.mysql.de/doc/de/UNION.html

frazzz 04.02.2004 20:59

ist union nicht nur ein zu setzendes flag :confused:


Alle Zeitangaben in WEZ +2. Es ist jetzt 05:00 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag