Seite 1 von 1

Zeiteingrenzung bei UNION ALL Befehl

Verfasst: Do, 03.05.2012 11:12
von oo-user-mit-problem
Hallo zusammen,

ich beschäftige mich gerade mit dem zusammenführen mehrerer gleichförmiger Tabellen. Das klappt im Grundsatz mit dem UNION ALL Befehl schon ganz gut (siehe angehängte DB). Nur an einer Stelle komme ich nicht weiter. ich möchte das Ergebnis der ABfrage "Abfrage_zusammen" zeitlich filtern können. In meiner echten DB habe ich das bei jeder Tabelle hinterlegt. Das würde aber beim Zusammenführen bedeuten: für jede Tabelle muss ich einen Start- und einen Endzeitpunkt eingeben. Das macht bei 5 Tabellen 10 Eingaben. Gibt es einen Weg wie ich die zeitliche Eingrenzung erst bei der Abfrage "Abfrage_zusammen" einbauen kann? Ich bin für jeden Hinweis dankbar.

Viele Grüße
oo-user-mit-problem

Re: Zeiteingrenzung bei UNION ALL Befehl

Verfasst: Do, 03.05.2012 16:38
von RobertG
Ich würde das über eine Ansicht lösen. Mach einfach aus der kombinierten Abfrage aller Tabellen, die Du mit Union ALL erstellt hast, eine Ansicht. Greife auf diese Ansicht mit einer Abfrage zu:

Code: Alles auswählen

SELECT "Kunde", "Artikel", "Preis", "Startdatum", "Enddatum" FROM "Zusammen" WHERE "Startdatum" > '2010-01-01'
So würde dann die Abfrage aussehen, wenn die Ansicht "Zusammen" heißt.

Gruß

Robert

Re: Zeiteingrenzung bei UNION ALL Befehl

Verfasst: Do, 03.05.2012 19:00
von oo-user-mit-problem
Hallo Robert,

das war genau der entscheidende Hinweis. DANKE!!!!!!!!! Jetzt habe ich mir für die Zeit noch eine Abfrage nach dem Muster

WHERE "Datum" >= :A_Startdatum AND "Datum" <= :B_Enddatum

drangebastelt. Und jetzt scheint es so zu laufen wie ich es wollte. Nochmals vielen Dank für Deine Hilfe!

Viele Grüße
oo-user-mit-problem (jetzt eins weniger ;-) )