Hallo,
Probier erst mal aus, ob
Paradox überhaupt
Union kann
with
Query do
begin
SQL.Clear;
SQL.Add('Select Prot_6_2007.Datum, Prot_6_2007.Name');
SQL.Add('From Prot_6_2007 ');
SQL.Add('Where ((Prot_6_2007>=:StartDate) And (Prot_6_2007<=:EndDate)) ');
SQL.Add('Union');
SQL.Add('Select Prot_7_2007.Datum, Prot_7_2007.Name');
SQL.Add('From Prot_7_2007 ');
SQL.Add('Where ((Prot_7_2007>=:StartDate) And (Prot_7_2007<=:EndDate)) ');
ParamByName('StartDate').AsDateTime := tdtStartDate; // vom Picker
ParamByName('EndDate').AsDateTime := tdtEndDate; // vom Picker
end;
Dann baue die
Query dynamisch auf,
mein Prot_6_2007, Prot_7__2007 stehen z.B. in einer TStringlist,
über die du dann per for-Schleife die
Query zusammenbaust.
Als Optimierung wäre halt zu überdenken, ob bestimmte Tabellen
überhaupt nicht benutzt werden müssen.
Wenn z.B. 1.3. bis 1.4 als Suche eingegeben werden,
macht es keinen Sinn, die 6er Tabelle hier zu verwenden.
Zu den Parametern.
Ich weiss jetzt nicht, ob der Parameter zweimal verwendet werden kann,
wenn nicht nimm halt StartDate0, StartDate1 usw.
Heiko