Похоже, что DATUM_OSIGURANJA
- это столбец VARCHAR2
;это?Если это так, вам придется преобразовать его в DATE
, а затем выбрать значение MAX
.Примерно так:
SELECT e.model, e.v_godina, e.datum_osiguranja
FROM evp_v_kasko_zb e
WHERE e.oib_osiguranik = '99999999994' --> guess what? A valid OIB :)
AND TO_DATE (e.datum_osiguranja, 'dd.mm.yyyy') =
(SELECT MAX (TO_DATE (e1.datum_osiguranja, 'dd.mm.yyyy'))
FROM evp_v_kasko_zb e1
WHERE e1.oib_osiguranik = e.oib_osiguranik);
Обратите внимание, что он разрушит индекс (если есть) на DATUM_OSIGURANJA
(или вы должны создать индекс на основе функций).
Правильный вариант - изменить тип данных столбца.Всегда храните даты в столбце DATE
datatype.Никогда не храните его как VARCHAR2
.