SELECT DISTINCT MOVIES.TITLE, CERTIFICATIONS.ID, PROJECTION.DAY, TIME_SLOTS.SLOT, PROJECTION.REMAINING_SEATS
FROM [...]
Distinct wordt toegepast op alle kolommen uit de SELECT-lijst. En ja, je kunt geen LOB's gebruiken in GROUP BY, UNION, DISTINCT enz. omdat Oracle niet weet hoe verschillende LOB's moeten worden vergeleken
Als je ook BLOB wilt ophalen, kun je zoiets als dit proberen:
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;
Maar je moet begrijpen waar je naar op zoek bent. De bovenstaande query groepeert bijvoorbeeld alle kolommen behalve een BLOB-kolom, rangschik ze op ongeveer twee kolommen en wijs een rijnummer toe aan elke rij in de groep. De resulterende zoekopdracht haalt alleen de eerste rij in elke groep op