![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
как найти разницу между двумя временами [D7, MySQL]
ol © (2004-09-22 10:58:00)Есть два поля типа datetime, в кторых хранится дата с временем
Подскажите как для Oracle 8.1.7 найти между ними разницу в часах и минутах?
ol (2004-09-22 13:26:00) [1]2 Sergey13 ©
чесно говоря и не знаю с какой стороны к PL/SQL подходить, нельзя ли коротенький примерчик
Sergey13 (2004-09-22 12:35:00) [2]А почему для этого самому не написать простенькую функцию на PL/SQL? Покороче будет.
ol (2004-09-22 12:27:00) [3]to Reindeer Moss Eater
:-) ну не знаю прога уже три года работает и дата с временем хранится в одном поле
тип то хоть и называется date но хранить там можна дату + время
Reindeer Moss Eater (2004-09-22 12:23:00) [4]Начнем с того, что в Оракле нет типа "datetime".
ol (2004-09-22 12:23:00) [5](decode(substr(((to_char(dat_tara,'hh24')*60+to_char(dat_tara,'mi')) -(to_char(dat_brutto,'hh24')*60+to_char(dat_brutto,'mi')))/60,1,1),',',0,substr(((to_char(dat_tara,'hh24')*60+to_char(da t_tara,'mi')) -(to_char(dat_brutto,'hh24')*60+to_char(dat_brutto,'mi')))/60,1,1))) ||'-'||(
substr(0|| to_char( ((to_char(dat_tara,'hh24')*60+to_char(dat_tara,'mi')) -(to_char(dat_brutto,'hh24')*60+to_char(dat_brutto,'mi'))) - decode(substr(((to_char(dat_tara,'hh24')*60+to_char(dat_tara,'mi')) -(to_char(dat_brutto,'hh24')*60+to_char(dat_brutto,'mi')))/60,1,1),',',0,substr(((to_char(dat_tara,'hh24')*60+to_char(da t_tara,'mi')) -(to_char(dat_brutto,'hh24')*60+to_char(dat_brutto,'mi')))/60,1,1))*60),-2,2)) as razn
Sergey13 (2004-09-22 12:15:00) [6]2[2] ol (22.09.04 11:15)
>так вот на это у меня уходит полстраницы кода, и работает не во всех случаях коректно
Если можно напости сюда эти полстраницы.
stud (2004-09-22 12:06:00) [7]delta=cast('00:00:00' as time)+(cast(time1 as time) - cast(time2 as time)); это для интербейс, если надо чего - переделаеш
clickmaker (2004-09-22 12:03:00) [8]что-то типа datediff()
ol (2004-09-22 11:46:00) [9]обшибся, интересует именно оракл
Nikolay M. (2004-09-22 11:36:00) [10]А при чем тут Оракл, если в топике указан MySQL?
ol (2004-09-22 11:15:00) [11]эт я и сам умею :-)
мне нужно чтоб был удобочитаемый вариант типа 00:00, так вот на это у меня уходит полстраницы кода, и работает не во всех случаях коректно
Нет ли функции самого оракла для получения разницы во времени, просто слышал что в девятом оракле что-то похожее есть
Sergey13 (2004-09-22 11:10:00) [12]select pole1-pole2 from table - в сутках. Умножай на 24 будут часы. Еще на 60 - минуты.