Seite 1 von 1

Abfragen als Tabellen / Verschachtelte SELECT-Ausdrücke

Verfasst: So, 23.07.2006 12:32
von Sigma.Mue
Hallo zusammen,

ich habe zwei Fragen, die im Endeffekt auf das Selbe hinauslaufen:

1.) Ich kann beim Erstellen neuer Abfragen nur auf Tabellen und nicht auf bereits bestehende Abfragen zugreifen. Mache ich da irgendwas falsch oder geht das unter OO generell nicht?

2.) Wenn ich eine Abfrage der Form

Code: Alles auswählen

SELECT * FROM (SELECT * FROM Tabelle1)
verwende, so erhalte ich die (für mich unsinnige) Fehlermeldung
SQL-Status: HY000
Fehler-Code: 1000

parse error, expecting `BETWEEN' or `IN' or `SQL_TOKEN_LIKE'
Sind in OO keine verschachtelten SELECT-Ausdrücke erlaubt? Bei MySQL geht das.

Vielen Dank, Sigma

Verfasst: So, 23.07.2006 16:57
von Toxitom
Hey Sigma,
1.) Ich kann beim Erstellen neuer Abfragen nur auf Tabellen und nicht auf bereits bestehende Abfragen zugreifen. Mache ich da irgendwas falsch oder geht das unter OO generell nicht?
Nein, geht nicht. Hier hilft nur folgendes: die Abfrage als "Ansicht" speichern - jetzt übernimmt die Vorselektion die DB-Engine, und man kann nun in neune Anfragen auf die "Ansicht" zugreifen. Aber: Eine "Ansicht" ist in Base nicht mehr bearbeitbar - ist dann eben wie eine Tabelle.
Sind in OO keine verschachtelten SELECT-Ausdrücke erlaubt?
Was heisst "in OOo"? OOo Base stellt "nur" den Container zur Verfügung - darunter liegt deine Datenbank-Engine und die Mögichkeiten derselben.
Die mitgelieferte HSQLDB Engine kann das nicht. Die einfachen Hilfen in Base (also der grafische Abfrage-Manager etc) sind sehr stark an HSQLDB orientiert, der dürfte ebenfalls versagen.
Hast du aber eine MySQL-Engine entsprechend eingebunden und diese kann das, so kannst du die Kommandos selbstverständlich nutzen - direkt über die SQL Eingabefenster. Du darfst sie nur nicht in die grafische Darstellung laden - dann sollte es gehen. Oft kannst du die Fehlermeldungen einfach wegdrücken (schliessen), die Abfrage wird dennoch korrekt ausgeführt (falls das Kommando korrekt war...) und die Ergebnisse angezeigt.

Viele Grüße
Thomas

Verfasst: Di, 25.07.2006 07:26
von Barlee
Hallo Sigma,

oft hilft es, wenn Du im Abfrageentwurf unter "Bearbeiten" die Option "SQL Kommando direkt ausführen" auswählst.
Verschachtelte Abfragen sollten dann möglich sein

Gruß Barlee