Я использую Oracle 11g и у меня проблема с поиском разницы дней между двумя датами - (Sysdate) и некоторой переменной даты. Тогда разница будет умножена на другое число. Ниже приведены два метода, которые я пробовал, но продолжал возвращать отрицательное значение.
Вновь назначенная переменная return_date
имеет правильное значение.
Заранее спасибо за помощь!
UPDATE borrowed_books
SET penalty_fine = (TO_DATE(sysdate, 'dd-mm-yyyy') - TO_DATE(return_date, 'dd-mm-yyyy')) * 20,
return_date = SYSDATE
WHERE patron_id = patID AND
transaction_id = transID;
UPDATE borrowed_books
SET penalty_fine = (sysdate - return_date) * 20,
return_date = SYSDATE
WHERE patron_id = patID AND
transaction_id = transID;