Добрый день.
Подскажите как реализовать?
Есть начальное время и текущее время в формате DT. Разница между текущим и начальным временем не более 12 часов.
Есть время за которое проходит цикл в формате Time
Необходимо узнать сколько циклов было в этот промежуток времени?
Я так понимаю, что DT надо преобразовать в Time (функция DT_TO_TIME преобразует в формат *******d**h**m**s - как то еще надо убрать дни. Можно конечно еще разложить, а потом собрать что надо)
а потом поделить Time (разница между текущим и начальным временем) на Time (время за которое проходит один цикл).
Может кто подскажет как сделать проще и правильнее?
Есть 3 варианта, перевести DT в TIME, первые два варианта на скрине1 Время.jpg упростил 1 Время 2.jpg
1) Вариант попроще, конвертировать DT_TO_TOD, а потом TOD_TO_TIME
T1:=TOD_TO_TIME(DT_TO_TOD(DT1));
2) Немного сложней, конвертировать DT_TO_DWORD, извлечь время MOD 86400, и умножить на 1000 и уже конвертировать DWORD_TO_TIME
T2:=DWORD_TO_TIME((DT_TO_DWORD(DT1) MOD 86400) *1000);
3) Самый простой, для получения разницы времени t3 :TIME; просто вычесть DT0 - начальный из DT1- текущий. Скрин 1 Время 3.jpg
t3:=DT1-DT0;
Последний раз редактировалось kondor3000; 14.01.2024 в 23:07.
Добрый день.
Кто то пытался вывести проект на просмотр на современный SMART TV через встроенный браузер?
У меня не открывает проект, висит, потом появляется не активное окно "внимание" и все подвисает.
Последний раз редактировалось it.lenin@preforma.ru; 18.01.2024 в 13:49.
Это по нашей переписке скрины...112.png
Действительно UTC...
Корректировка часового пояса:
IMG_20240115_203221.jpg
Проверить нет возможности, но в самом sql работает.
Все работает, огромное спасибо!!!!
А так пробовали?Хотя это уже не так принципиально, но почему так?
илиwhere source_time>= timestamp '2024-01-01 00:00:00'
and source_time< timestamp '2024-01-10 00:00:00';
where source_time>= make_timestamp(2024,1,1,0,0,0)
and source_time< make_timestamp(2024,1,10,0,0,0);
Последний раз редактировалось onimor; 10.01.2024 в 08:16.