DB2-Datenbank:die Anzahl der Zeilen in der kombinierten Abfrage Limiting UNION mit
select *
from (SELECT table1.field1, ROW_NUMBER() OVER (ORDER BY table1.field1) AS RID FROM table1
UNION
SELECT table2.field1
FROM table2, ROW_NUMBER() OVER (ORDER BY table2.field1) AS RID order by field1) as t where t.rid <= 20
Above Abfrage gibt 40 Datensätze, müssen nur 20 Datensätze holen. Diese Abfrage versucht einfach, 20 Datensätze aus jeder Abfrage abzurufen, was insgesamt 40 Datensätze ergibt. Es kann vorkommen, dass Abfrage 1 0 Datensätze zurückgibt, Abfrage 2 jedoch 20 Zeilen. Schlagen Sie vor, wenn sich jemand einem ähnlichen Problem und einer ähnlichen Lösung gegenübersieht?
Sie meinen etwas wie "LIMIT 20"? – gdros
Haben Sie die Klauseln LIMIT oder FIRST 20 ROWS ONLY berücksichtigt? –