Я пытаюсь взять столбец исторических временных меток и создать из него столбец, содержащий количество лет между текущей временной меткой и историческим, при условии, что 365,25 дней в год .
До сих пор мне удавалось выполнить это, используя следующий запрос: выберите столбец 1 как CLASS, столбец 2 как DATE_CREATED, TIMESTAMPDIFF (16, char (SYSDATE-столбец 2)/365,25 AS YearsDiff из DELIVERYCLASS заказа по YearsDiff DESC;
Однако проблема заключается в том, что результаты запроса показывают количество лет только в масштабе двух. То есть я получаю только количество лет до сотого знака после запятой. Этого недостаточно. Мне нужно масштабировать его как минимум до 10 цифр.
У меня есть ссылки на два снимка экрана, один с выполнением запроса, как указано выше, и один без деления на 365,25.
Любая помощь приветствуется.
DECIMAL(31,18)
. - person mustaccio   schedule 01.03.2016TIMESTAMPDIFF
предполагает 365 дней в году, верно? Таким образом, если у вас есть разница ровно в 1 год, ваша текущая математика вернет сумму меньше, чем 1. Даже для високосных лет. Лучше использоватьDAYS(...)
для каждого и используя разницу. Для чего ты это используешь вообще? - person Clockwork-Muse   schedule 01.03.2016