SELECT DISTINCT MOVIES.TITLE, CERTIFICATIONS.ID, PROJECTION.DAY, TIME_SLOTS.SLOT, PROJECTION.REMAINING_SEATS
FROM [...]
Distinct wird auf alle Spalten der SELECT-Liste angewendet. Und ja, Sie können keine LOBs in GROUP BY, UNION, DISTINCT usw. verwenden, da Oracle nicht weiß, wie man verschiedene LOBs vergleicht
Wenn Sie auch BLOB abrufen möchten, können Sie Folgendes versuchen:
SELECT MOVIES.TITLE, CERTIFICATIONS.ID,
PROJECTION.DAY, TIME_SLOTS.SLOT, PROJECTION.REMAINING_SEATS, IMAGES.IMAGE
FROM (
SELECT MOVIES.TITLE, CERTIFICATIONS.ID,
PROJECTION.DAY, TIME_SLOTS.SLOT, PROJECTION.REMAINING_SEATS, IMAGES.IMAGE,
row_number() over (partition by MOVIES.TITLE, CERTIFICATIONS.ID, PROJECTION.DAY, TIME_SLOTS.SLOT, PROJECTION.REMAINING_SEATS
order by PROJECTION.DAY, TIME_SLOTS.SLOT) RW
FROM [...]
) WHERE RW = 1;
Aber Sie sollten verstehen, wonach Sie suchen. Beispielsweise gruppiert die obige Abfrage alle Spalten außer einer BLOB-Spalte, ordnet sie nach etwa zwei Spalten an und weist jeder Zeile in der Gruppe eine Zeilennummer zu. Die resultierende Abfrage ruft nur die erste Zeile in jeder Gruppe ab