2015-02-09 4 views
2

Я передал год и месяц отдельно в качестве параметров в пентахо и добавил месяц на 1 и конвертировал в формат даты. Я писал так, чтобы присоединиться к году, месяцу и дате.Приращение года на 1, если месяц - декабрь

('${year}' || '-' || '${month}'+1 || '-' || 1)::date 

Мне нужно увеличить месяц на 1 с существующей даты. если месяц - декабрь (12), новый месяц будет 1 (январь), а год будет в следующем году.
ex: 2012-12-30 новая дата будет 2013-01-30
Как написать запрос для этого в postgreSQl?

ответ

3

Добавить в месяце после преобразования его к дате:

('${year}' || '-' || '${month}' || '-' || 1)::date + interval '1' month 
2

Postgresql обеспечивает с несколькими date/time functions and operators. Чтобы увеличить дату на 1 месяц, вам нужно будет использовать оператора interval. Как упомянуто в выше ответа, вам необходимо сначала изменить свои параметры на поле даты , а затем добавитьinterval '1' month. Это даст вам желаемый результат.

Вы также можете попробовать использовать Pentaho Калькулятор Шаг, чтобы также увеличить дату на 1 месяц. Проверьте изображение ниже.

enter image description here

Здесь gist приведенной выше КТР.

Надеюсь, что это поможет :)

Смежные вопросы