Главная страница
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.072 c
15-1176737810
@!!ex
2007-04-16 19:36
2007.05.13
Кривая по трем точкам.


15-1176673655
Германн
2007-04-16 01:47
2007.05.13
{$IFDEF } и {$IFNDEF}


9-1149933920
DevilDevil
2006-06-10 14:05
2007.05.13
Мультитекстурирование?


9-1149625295
DevilDevil
2006-06-07 00:21
2007.05.13
Алгоритм быстрой 3D графики


2-1176975599
AK47
2007-04-19 13:39
2007.05.13
Есть 2 ADOQuery , 1 работает а вот второй нет