Zitat:
Ich bekomme die Fehlermeldung "Zu wenig Arbeitsspeicher für diese Operation". Aber nur, wenn ich das DISTINCT in der
SQL-Anweisung habe. Ohne funktioniert es. Das kann doch nicht wirklich am Arbeitsspeicher liegen
Doch! DISTINCT führt im Hintergrund eine Sortierung durch (oder zumindest eine
Liste der ausgegebenen Werte muss im Speicher gehalten werden).
Du kannst der Datenbank helfen, indem du einen
Index auf das Feld MainMenu
legst.
CREATE INDEX IX_TabelleMainMenu ON Tabelle (MainMenu)
Mit dem Index kann das
DBMS die Tabelle in sortierter Reihenfolge
durchlaufen und es wird kein zusätzlicher Speicher für die Entfernung
von Dupplikaten benötigt.