title image


Smiley Re: Wie 2 Tabellen gleichzeitig abfragen?
Hallo,



Dein Problem entspricht wohl nicht ganz der "normalen" Vorgehensweise eines DB Problems.



"Normalerweise" werden Ergebnisse in einer Zeile angezeigt.



Aus diesem Grunde, wird es wohl auch nicht mit einem einzigen SQL funktionieren.



Zusammen "untereinander" geht auch nur, wenn die beiden Sätze ein eindeutiges Merkmal besitzen, das sie zu einem "Paar" identifiziert. Sonst stehen Sie ja irgendwo in Deinem Ergebniss.



Mein Vorschlag (obwohl es bestimmt viele Möglichkeiten gibt).



1. Selektiere die Sätze wie Bitstream es angegeben hat in eine Scratch Table, die ein Feld besitzt, daß sich automatisch erhöht (Serial-Feld).



Der Sätze sollten ungefähr so aussehen:



1, Felder_von_Tabelle1, Felder_von_Tabelle2

2, Felder_von_Tabelle1, Felder_von_Tabelle2

3, Felder_von_Tabelle1, Felder_von_Tabelle2

usw.



In einem zweiten SQL, holst Du Dir nun mit einem Union die Sätze wieder einzeln aus dem Ergebnis der Scratch Tabelle:



select Serial-Feld, Felder_von_Tabelle1

union all

select Serial-Feld, Felder_von_Tabelle2

order by Serial-Feld, (Evtl. benötigst Du noch einen Group)



Das Ergebnis sollte wie folgt aussehen (select mit einem Order auf Serial-Feld):



1, Felder_von_Tabelle1

1, Felder_von_Tabelle2

2, Felder_von_Tabelle1

2, Felder_von_Tabelle2

3, Felder_von_Tabelle1

3, Felder_von_Tabelle2



Wenn Du die Sätze nun auch noch so im Ergebniss haben möchtest, daß die Felder_von_Tabelle1 immer an erster Stelle stehen, dann musst Du den Select um ein Kennzeichen für die Tabelle erweitern, dies beziehst Du dann in den order by mit ein:



select Serial-Feld, "tab1" as tabmerkmal, Felder_von_Tabelle1

union all

select Serial-Feld, "tab2" as tabmerkmal, Felder_von_Tabelle2

order by Serial-Feld, tabmerkmal



Hope that works



geschrieben von

Login

E-Mail:
  

Passwort:
  

Beitrag anfügen

Symbol:
 
 
 
 
 
 
 
 
 
 
 
 
 

Überschrift: