SELECT DISTINCT MOVIES.TITLE, CERTIFICATIONS.ID, PROJECTION.DAY, TIME_SLOTS.SLOT, PROJECTION.REMAINING_SEATS
FROM [...]
Distinct се прилага към всички колони от списъка SELECT. И да, не можете да използвате LOB в GROUP BY, UNION, DISTINCT и т.н., защото Oracle не знае как да сравнява различни LOB
Ако искате да извлечете и BLOB, можете да опитате нещо подобно:
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;
Но трябва да разберете какво търсите. Например, заявката по-горе групира всички колони с изключение на колона BLOB, подрежда ги по две колони и присвоява номер на ред на всеки ред в групата. Получената заявка извлича само първия ред във всяка група