• 19.04.2024, 22:57
  • Registrieren
  • Anmelden
  • Sie sind nicht angemeldet.

 

Lieber Besucher, herzlich willkommen bei: Aqua Computer Forum. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

amok

Senior Member

SQL Anfügeabfrage über mehrere Tabellen

Montag, 11. Oktober 2010, 15:10

Hi zusammen,

ich stehe zur Zeit vor folgendem Problem: Ich habe eine große Anzahl kleiner Tabellen (pro Monat eine, ca. 50.000 Datensätze) ich möchte nun alle dieses Tabellen (80Stück) am liebsten mit einer einzigen Anfügeabfrage zusammenfassen um die Datenauswerten zu können. Die Tabellen liegen alle auf einem SQL Server und momentan behlfe ich mir in dem ich eine Tabelle nach der anderen Anfüge. Kennt da jemand eine elegantere Lösung?

Tabelle1
Tabelle2
...
Tabelle80


in Tabelle-komplett

Grüße und Danke
Amok

amok

Senior Member

Montag, 11. Oktober 2010, 17:40

naja, das hilft mir nicht wirklich weiter.
auf solche Seiten bin ich auf meiner Suche auch schon gestoßen.
eine Beispieldatei würde mir evtl. weiterhelfen.
z.B.
Wir haben die Tabellen: T1, T2, T3, T4 und die sollen nacheinander in die Tabelle K.

Montag, 11. Oktober 2010, 19:22

Sofern die Tabellen einigermaßen die selbe Struktur haben, kannst du `UNION` benutzen.

Aber eine separate Tabelle pro Monat? Das scheint totaler RDBMS-Fuckup zu sein. Man könnte z.B. mal eine neue Spalte `month` einfügen und dann alle Zeilen aller Tabellen in einer einzigen Tabelle unterbringen.

amok

Senior Member

Montag, 11. Oktober 2010, 20:02

@Yogi:
Die Tabellen sind komplett identisch. Nur die Anzahl der Datensätze ist unterschiedlich.
Bei Union baut er mir allerdings extrem große Tabellen auf ???

Das man(n) die Tabellen besser in einer verwalten würde ist mir auch klar, allerdings wurden die Daten bei einem Kunden exportiert und eine andere Möglichkeit gab es da leider nicht.

Dienstag, 12. Oktober 2010, 19:02

Bei Union baut er mir allerdings extrem große Tabellen auf ???

Was heißt "groß"? Die Spalten sollten der einer der einzelnen Tabellen entsprechend. Enthalten sollten aber (mit `UNION ALL`) alle Datensätze aller beteiligten Tabellen sein, es dürfte also entsprechend ~80 x ~50.000 Zeilen geben.

Hier ein Beispiel für `UNION [ALL]`: http://www.w3schools.com/sql/sql_union.asp

Um das SQL-Statement zusammen zu bauen, kannst du dir natürlich eines kleinen Scripts behelfen - insbesondere, wenn die Tabellennamen eine bestimmten Schema folgen (z.B. aufsteigend nummeriert oder mit Datum versehen sind).