Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.05.13;
Скачать: CL | DM;

Вниз

Получение разницы между датой/временем   Найти похожие ветки 

 
Megabyte ©   (2007-02-27 11:43) [0]

Требуется получить разницу полей типа Timestamp, сервер FB 2.0
1)Если как запрос делать timestamp2-timestamp1, то формат результата выводится в виде долей дня(т.е. как просто дробное вещественное число).
2)Если оформлять как вычисляемое поле на клиенте(на Дельфи) тип DateTime, то результат выдается в виде начальнаое дата/время вида "30.12.1899 00:00" + разница. Отображение, конечно лучше, чем в 1)
Но мне бы иметь абсолютную разницу. Возможно ли это стандартными функциями(или придется писать свою?)? Если да, то какими?

з.ы. Мне потом эту разницу прибавлять к дате, используя PHP.   Кто может подсказать, каким образом там действовать, буду благодарен.


 
Sergey13 ©   (2007-02-27 11:56) [1]

> Требуется получить разницу полей типа Timestamp
Выраженную в чем?

> 1)Если как запрос делать timestamp2-timestamp1, то формат результата выводится в виде долей дня
И чем это не подходит?


 
Desdechado ©   (2007-02-27 11:57) [2]

> просто дробное вещественное число
> Но мне бы иметь абсолютную разницу.
А теперь просвети, в чем разница этих 2 строк.


 
Megabyte ©   (2007-02-27 12:03) [3]

Пример: 04.10.2006 11:52:53 и 05.10.2006 13:29:39
2 варианта результатов:
как запрос, разницы 1) 1,06720578703704 (неудобно же работать)
как вычисляемое поле 2) 31.12.1899 1:36:46 (тоже не лучший вариант)
Понятно?
Мне же надо в таком виде, чтобы потом прибавлять эту разницу 01.00.00 1:24:57) с помощью PHP к другой дате!


 
Megabyte ©   (2007-02-27 12:09) [4]

Да, забыл, мне еще надо вычислить среднее арифметическое этой разницы. Запросом бы, конечно, было бы удобнее, но как потом формат 1,06720578703704 представить в понятном для пользователя виде?


 
Desdechado ©   (2007-02-27 12:13) [5]

> 1,06720578703704 (неудобно же работать)
Для:

> прибавлять эту разницу к другой дате
и
> вычислить среднее арифметическое
самое оно.

А для показа пользователю переведи в сутки:часы:мин:сек.
Помни, что интервал (расстояние между датами) и дата (точка на оси времени) - вещи разные.


 
Megabyte ©   (2007-02-27 12:24) [6]


> А для показа пользователю переведи в сутки:часы:мин:сек.

Есть стандартная функция?


 
Desdechado ©   (2007-02-27 12:33) [7]

x:= 1,06720578703704;
сутки := trunc( x );
часы := Trunc( ( x - сутки )*24 );
далее, думаю, понятно


 
Megabyte ©   (2007-02-27 12:36) [8]

:) Спасибо



Страницы: 1 вся ветка

Текущий архив: 2007.05.13;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.033 c
2-1177072185
Kostafey
2007-04-20 16:29
2007.05.13
3 простых вопроса


2-1177399226
webpauk
2007-04-24 11:20
2007.05.13
Работа с потоками


15-1176501642
Германн
2007-04-14 02:00
2007.05.13
Ищу ресурсы :-)


1-1173883185
Леонид
2007-03-14 17:39
2007.05.13
Управление другой программой


2-1177273657
Malik
2007-04-23 00:27
2007.05.13
Вопрос компонентоам создающим дерево