Seite 1 von 1

[GELÖST] SELECT ... UNION Select ... UNION SELECT ...

Verfasst: So, 08.05.2011 18:49
von hpott
Eine bereits bestehende Abfrage mit

Code: Alles auswählen

SELECT ... UNION SELECT ...

wurde von mir um ein drittes Selct erweitert. Also:

Code: Alles auswählen

SELECT ... UNION SELECT ... UNION SELECT ...
Dabei "vergisst" Base (oder die dahinterliegende HSQLDB) eine Ergebniszeile. Kurios dabei ist, dass das SELECT-Statement alleine die Ergebniszeile nicht "vergisst". Auch wenn ich einen Wert in der abgefragten Tabelle ändere, erscheint das korrekte Ergebnis.

Meine Fragen lauten daher: Ist das doppelte UNION ist zulässig? Oder gibt es bekannte Probleme damit?

Die Datenbank ist übriges via JDBC-Treiber angebunden und läuft seit fast 1,5 Jahren stabil. Nur die aktuell erforderliche Erweiterung "spinnt".

mfg
HPott

Re: SELECT ... UNION Select ... UNION SELECT ...

Verfasst: So, 08.05.2011 19:06
von DPunch
Aloha
hpott hat geschrieben:Dabei "vergisst" Base (oder die dahinterliegende HSQLDB) eine Ergebniszeile
Gibt es möglicherweise gleichartige Ergebnisse?
UNION beinhaltet sozusagen ein DISTINCT, das heisst, dass Duplikate herausgefiltert und nur einmal dargestellt werden.
Um dieses Verhalten abzuschalten benötigt es das Signalwort "ALL"

Code: Alles auswählen

SELECT ... UNION ALL SELECT ... UNION ALL SELECT ...

Re: SELECT ... UNION Select ... UNION SELECT ...

Verfasst: Fr, 13.05.2011 22:57
von hpott
Mit "ALL" sind wieder alle Datensätze da! Danke für den Tipp!

HPott