|
|
|
add_months
|
|||
|---|---|---|---|
|
#18+
Коллеги, только сейчас обратил внимание на особенность работы функции add_months, что если прибавить три месяца сразу или три раза по одному месяцу, то получатся разные результат: Код: sql 1. 2. 3. 4. Даже не знаю, какой вопрос... Это во всех версиях так? Это нормально, не считается багом? И как все-таки "правильнее" прибавлять три месяца? (по вашему мнению, не беря в расчет бизнес-логику конкретного приложения)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2016, 16:54 |
|
||
|
add_months
|
|||
|---|---|---|---|
|
#18+
Это, как обычно, стоит просто внимательней прочесть доку https://docs.oracle.com/cd/E11882_01/server.112/e41084/functions011.htm#SQLRF00603 If date is the last day of the month or if the resulting month has fewer days than the day component of date , then the result is the last day of the resulting month. Otherwise, the result has the same day component as date . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2016, 17:06 |
|
||
|
add_months
|
|||
|---|---|---|---|
|
#18+
rybingleb, это нормально. если вдуматься и/или вчитаться в описание, то понятно что иначе и не может быть ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2016, 17:08 |
|
||
|
add_months
|
|||
|---|---|---|---|
|
#18+
То есть получается, что функция сначала вычисляет результирующий месяц, а потом вычисляет день. Я же, когда пытался считал в уме, прибавлял один месяц по правилам функции, потом еще один к результату, потом еще один, и получал результат, как во втором варианте ) Код: plsql 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2016, 17:29 |
|
||
|
add_months
|
|||
|---|---|---|---|
|
#18+
rybinglebТо есть получается, что функция сначала вычисляет результирующий месяц, а потом вычисляет день. Я же, когда пытался считал в уме, прибавлял один месяц по правилам функции, потом еще один к результату, потом еще один, и получал результат, как во втором варианте ) Код: plsql 1. 2. не так. просто у функции есть входные параметры и есть выходной (= результат) и здесь нет нужды додумывать реализацию её потрохов ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.12.2016, 10:53 |
|
||
|
|

start [/forum/topic.php?fid=52&msg=39375096&tid=1886757]: |
0ms |
get settings: |
10ms |
get forum list: |
21ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
212ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
60ms |
get tp. blocked users: |
2ms |
| others: | 242ms |
| total: | 569ms |

| 0 / 0 |
