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

Вниз

как найти разницу между двумя временами   Найти похожие ветки 

 
ol   (2004-09-22 10:58) [0]

Есть два поля типа datetime, в кторых хранится дата с временем
Подскажите как для Oracle 8.1.7 найти между ними разницу в часах и минутах?


 
Sergey13 ©   (2004-09-22 11:10) [1]

select pole1-pole2 from table - в сутках. Умножай на 24 будут часы. Еще на 60 - минуты.


 
ol   (2004-09-22 11:15) [2]

эт я и сам умею :-)
мне нужно чтоб был удобочитаемый вариант типа 00:00, так вот на это у меня уходит полстраницы кода, и работает не во всех случаях коректно

Нет ли функции самого оракла для получения разницы во времени, просто слышал что в девятом оракле что-то похожее есть


 
Nikolay M. ©   (2004-09-22 11:36) [3]

А при чем тут Оракл, если в топике указан MySQL?


 
ol   (2004-09-22 11:46) [4]

обшибся, интересует именно оракл


 
clickmaker ©   (2004-09-22 12:03) [5]

что-то типа datediff()


 
stud ©   (2004-09-22 12:06) [6]

delta=cast("00:00:00" as time)+(cast(time1 as time) - cast(time2 as time)); это для интербейс, если надо чего - переделаеш


 
Sergey13 ©   (2004-09-22 12:15) [7]

2[2] ol   (22.09.04 11:15)
>так вот на это у меня уходит полстраницы кода, и работает не во всех случаях коректно
Если можно напости сюда эти полстраницы.


 
Reindeer Moss Eater ©   (2004-09-22 12:23) [8]

Начнем с того, что в Оракле нет типа "datetime".


 
ol   (2004-09-22 12:23) [9]

(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


 
ol   (2004-09-22 12:27) [10]

to Reindeer Moss Eater

:-) ну не знаю прога уже три года работает и дата с временем хранится в одном поле

тип то хоть и называется date но хранить там можна дату + время


 
Sergey13 ©   (2004-09-22 12:35) [11]

А почему для этого самому не написать простенькую функцию на PL/SQL? Покороче будет.


 
ol   (2004-09-22 13:26) [12]

2 Sergey13 ©

чесно говоря и не знаю с какой стороны к PL/SQL подходить, нельзя ли коротенький примерчик



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

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

Наверх




Память: 0.49 MB
Время: 0.041 c
9-1087116065
Жора
2004-06-13 12:41
2004.10.17
Проблемы с клавиатурой


1-1096568026
Dot
2004-09-30 22:13
2004.10.17
Применение настроек


3-1095174226
DIS
2004-09-14 19:03
2004.10.17
отчет Fastreport


1-1096716248
roma
2004-10-02 15:24
2004.10.17
Install component


1-1096647667
quickblack
2004-10-01 20:21
2004.10.17
pchar