Как увеличить масштаб результатов запроса DB2 в SQuirreL?

Я пытаюсь взять столбец исторических временных меток и создать из него столбец, содержащий количество лет между текущей временной меткой и историческим, при условии, что 365,25 дней в год .

До сих пор мне удавалось выполнить это, используя следующий запрос: выберите столбец 1 как CLASS, столбец 2 как DATE_CREATED, TIMESTAMPDIFF (16, char (SYSDATE-столбец 2)/365,25 AS YearsDiff из DELIVERYCLASS заказа по YearsDiff DESC;

Однако проблема заключается в том, что результаты запроса показывают количество лет только в масштабе двух. То есть я получаю только количество лет до сотого знака после запятой. Этого недостаточно. Мне нужно масштабировать его как минимум до 10 цифр.

У меня есть ссылки на два снимка экрана, один с выполнением запроса, как указано выше, и один без деления на 365,25.

Любая помощь приветствуется.

без деления на 365,25 с делением на 365,25


person MarkyMark310    schedule 29.02.2016    source источник
comment
Похоже на проблему с клиентом (SQuirrel); согласно правила результата арифметического оператора фактический тип данных результата должен быть DECIMAL(31,18).   -  person mustaccio    schedule 01.03.2016
comment
Вы же знаете, что TIMESTAMPDIFF предполагает 365 дней в году, верно? Таким образом, если у вас есть разница ровно в 1 год, ваша текущая математика вернет сумму меньше, чем 1. Даже для високосных лет. Лучше использовать DAYS(...) для каждого и используя разницу. Для чего ты это используешь вообще?   -  person Clockwork-Muse    schedule 01.03.2016


Ответы (1)


Это действительно настройка SQirreL. Проверьте Глобальные настройки -> Элементы управления типом данных -> Float, real, Double,... И установите необходимое количество цифр....

Я добавил скриншот, чтобы прояснить это

Скриншот

person MichaelTiefenbacher    schedule 29.02.2016