Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
06.08.2019, 13:28
|
|||
---|---|---|---|
|
|||
date + 0.99999 |
|||
#18+
Добрый день, возник небольшой спор Какие железобетонные аргументы можно привести, что бы перестали писать выражения вида Код: plsql 1.
Мои аргументы - это уродливо, и что будем делать если это будет timestamp? девяток то уже не хватит Раньше лепили 0.999 - это 23:58:34, ошибку исправили на 0.99999 - 23:59:59 ... |
|||
:
Нравится:
Не нравится:
|
|||
|
06.08.2019, 13:41
|
|||
---|---|---|---|
date + 0.99999 |
|||
#18+
а если в переменной дата со временем, что получится? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
06.08.2019, 13:43
|
|||
---|---|---|---|
|
|||
date + 0.99999 |
|||
#18+
mrwert, Если нет регламента написания кода, то никак, если есть - внести в недопустимые решения. Но каких-либо внятных аргументов против вы не привели "уродливо"-это вкусовщина, timestamp - это другой тип данных, очевидно что данный финт расчитан именно на использование в типе date Я бы вместо "уродливо" использовал формулировку - "не очевидно и усложняет понимание кода", так же много у кого в регламентах по коду есть запрет на использование "магических чисел" в коде, можно использовать и его. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
06.08.2019, 13:47
|
|||
---|---|---|---|
|
|||
date + 0.99999 |
|||
#18+
mrwertчто бы перестали писать выражения вида Правильно будет писать Код: sql 1.
Но этому ты никого не обучишь. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
|
06.08.2019, 13:49
|
|||
---|---|---|---|
date + 0.99999 |
|||
#18+
mrwertчто будем делать если это будет timestamp? девяток то уже не хватит Как только ты прибавишь/вычтешь из timestamp так сразу timestamp неявно преобразуется в date и дробная часть секунд потеряется. Date arithmetic подразумевает date. С timestamp, в общем случае, прибавляем/вычитаем interval. SY. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
06.08.2019, 13:49
|
|||
---|---|---|---|
date + 0.99999 |
|||
#18+
mrwert, https://oracleplsql.ru/to_dsinterval-function.html - и не компилить кода на уровне системного тригера где содержится like (%0.999%) ... |
|||
:
Нравится:
Не нравится:
|
|||
|
06.08.2019, 13:53
|
|||
---|---|---|---|
date + 0.99999 |
|||
#18+
Dimitry SibiryakovПравильно будет писать Для timestamp - да. А для date правильно будет писать Код: plsql 1.
Зачем неявные (хоть и дешевые) преобразования. SY. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
06.08.2019, 14:01
|
|||
---|---|---|---|
|
|||
date + 0.99999 |
|||
#18+
feagor, feagor "уродливо"-это вкусовщина - полностью согласен, "не очевидно и усложняет понимание кода" - звучит намного лучше ... |
|||
:
Нравится:
Не нравится:
|
|||
|
06.08.2019, 14:18
|
|||
---|---|---|---|
|
|||
date + 0.99999 |
|||
#18+
Спасибо всем, В общем как говорил один персонаж - "Нужна политическая воля" )) ... |
|||
:
Нравится:
Не нравится:
|
|||
|
06.08.2019, 14:19
|
|||
---|---|---|---|
date + 0.99999 |
|||
#18+
SYС timestamp, в общем случае, прибавляем/вычитаем interval.Вопрос о нестрогом сравнении верхней границы. С таймстампом проблема усугубляется неявностью неявной точности таймстамп-выражений и интервал-литералов Код: plsql 1. 2. 3. 4. 5. 6. 7. 8.
Vintи не компилить кода на уровне системного тригера где содержится like (%0.999%)86399/86400 ... |
|||
:
Нравится:
Не нравится:
|
|||
|
06.08.2019, 14:41
|
|||
---|---|---|---|
date + 0.99999 |
|||
#18+
-2-Вопрос о нестрогом сравнении верхней границы. С таймстампом проблема усугубляется неявностью неявной точности таймстамп-выражений и интервал-литералов Первая цифра в SECOND это leading_precision: INTERVAL DAY TO SECOND Код: plsql 1. 2. 3. 4. 5.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
06.08.2019, 15:24
|
|||
---|---|---|---|
date + 0.99999 |
|||
#18+
-2-, ну можно написать и -1-interval '1' second и еще десятки способов. от криворукости нет спасения. только code review нормальный. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
06.08.2019, 15:59
|
|||
---|---|---|---|
date + 0.99999 |
|||
#18+
не, это круче Код: plsql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
06.08.2019, 22:10
|
|||
---|---|---|---|
date + 0.99999 |
|||
#18+
SYDimitry SibiryakovПравильно будет писать Код: plsql 1.
Для timestamp - да.Это универсально для любого datetime. Это самодокументировано. SYА для date правильно будет писать Код: plsql 1.
Зачем неявные (хоть и дешевые) преобразования.Какие преобразования? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
08.08.2019, 08:54
|
|||
---|---|---|---|
|
|||
date + 0.99999 |
|||
#18+
Dimitry SibiryakovПравильно будет писать Код: sql 1.
Но этому ты никого не обучишь. Главное, чтобы привыкнув к такому, не написали бы потом Код: sql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=52&mobile=1&tid=1882217]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
342ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
51ms |
get tp. blocked users: |
1ms |
others: | 264ms |
total: | 705ms |
0 / 0 |