|
|
|
months_between ora-->postgres
|
|||
|---|---|---|---|
|
#18+
помогите реализовать months_between на постгресе дело в том что в ора она возвращает результат с плавающей точкой нашел вариант для постгреса: Код: sql 1. но он вернет 1, в ора это будет 1,96774193548387 к сожалению результат ннадо как в ора-( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.06.2015, 11:01 |
|
||
|
months_between ora-->postgres
|
|||
|---|---|---|---|
|
#18+
Legushkaпомогите реализовать months_between на постгресе дело в том что в ора она возвращает результат с плавающей точкой нашел вариант для постгреса: Код: sql 1. но он вернет 1, в ора это будет 1,96774193548387 к сожалению результат ннадо как в ора-( А вот 3 месяца это сколько дней конкретно? Ответите на этот вопрос - я вам подскажу как считать ;) -- Maxim Boguk www.postgresql-consulting.ru ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.06.2015, 11:06 |
|
||
|
months_between ora-->postgres
|
|||
|---|---|---|---|
|
#18+
кажется в оракле берется из расчета как 31 день ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.06.2015, 11:10 |
|
||
|
months_between ora-->postgres
|
|||
|---|---|---|---|
|
#18+
Legushkaкажется в оракле берется из расчета как 31 день ну вот и возьмите разницу в днях и поделите на 31::float -- Maxim Boguk www.postgresql-consulting.ru ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.06.2015, 11:41 |
|
||
|
months_between ora-->postgres
|
|||
|---|---|---|---|
|
#18+
Maxim Boguk, спасибо select extract(year from age('2015-03-15', '2015-01-16'))*12 + extract(month from age('2015-03-15', '2015-01-16'))+extract(day from age('2015-03-15', '2015-01-16'))/31 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.06.2015, 12:38 |
|
||
|
months_between ora-->postgres
|
|||
|---|---|---|---|
|
#18+
оракловые add_months, months_beteeen с интервальной арифметикой несовместимы - последний день месяца может быть разным числом, но разница дает целое число месяцев. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.06.2015, 12:58 |
|
||
|
months_between ora-->postgres
|
|||
|---|---|---|---|
|
#18+
Legushkaкажется в оракле берется из расчета как 31 день"когда кажется - нужно молиться"© :-) Документация оракла вполне себе четко описывает алгоритм расчета: http://docs.oracle.com/cd/B19306_01/server.102/b14200/functions089.htm MONTHS_BETWEEN returns number of months between dates date1 and date2. If date1 is later than date2, then the result is positive. If date1 is earlier than date2, then the result is negative. If date1 and date2 are either the same days of the month or both last days of months, then the result is always an integer. Otherwise Oracle Database calculates the fractional portion of the result based on a 31-day month and considers the difference in time components date1 and date2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.06.2015, 13:21 |
|
||
|
|

start [/forum/topic.php?fid=53&fpage=109&tid=1997947]: |
0ms |
get settings: |
8ms |
get forum list: |
10ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
24ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
30ms |
get tp. blocked users: |
1ms |
| others: | 246ms |
| total: | 337ms |

| 0 / 0 |
