расчет времени
расчет времени
Подскажите пожалуйста, у меня есть поля типа TIME - intime(11:35) и outtime(12:00), как мне сделать расчет времени,допустим res=outtime-intime=00:35
Заранее благодарен.
Заранее благодарен.
-
- Заслуженный разработчик
- Сообщения: 1436
- Зарегистрирован: 15 сен 2005, 09:05
расчет времени
еще вопрос такого плана, допустим нужно сложить 23:00+22:00=1дн 21:00, а при таком вот запросеDimitry Sibiryakov писал(а):Разница времен не является временем. Но если сильно припекло, дели на 10000 и получишь секунды. Потом еще на 60 для минут.
cast('23:00' as time)+(cast('22:00' as time)-cast('00:00' as time))
в результате я получаю только время=21:00, куда деваются дни?
расчет времени
конечно спасибо, но буду рад если кто-то может быть всетаки сталкивался с такой проблемой и даст мне подсказку, как учесть дни.
Re: расчет времени
для начала рекомендую сюда:urban писал(а):конечно спасибо, но буду рад если кто-то может быть всетаки сталкивался с такой проблемой и даст мне подсказку, как учесть дни.
http://community.borland.com/article/0, ... 86,00.html
а вообще придется ньюансы в клиенте решать, не трогая SQL (ИМХО)
кстати, статья эта хреновая. Т.е. она хорошая в том смысле, что показывает виды операций над датой и временем, но при таких вычислениях идет сильная погрешность. например, вот это:для начала рекомендую сюда:
http://community.borland.com/article/0, ... 86,00.html
Код: Выделить всё
select cast('0:00' as time)+(cast('7/4/02 21:00' as timestamp)-current_timestamp)*24*60*60 from rdb$database
когда откроется курс по типам данных
http://course.ibase.ru/course/category.php?id=3
там будет материал, как считать правильно, включая этот случай. Однако хранение интервалов все равно надо делать в целочисленных типах.