Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.10.17;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.038 c
14-1095965277
lipskiy
2004-09-23 22:47
2004.10.17
Существуют ли электронные карты (местности) в виде


1-1096150607
Homa_Programer
2004-09-26 02:16
2004.10.17
Кнопочка


4-1095261523
AZiN
2004-09-15 19:18
2004.10.17
Серийный номер


3-1095868683
SH
2004-09-22 19:58
2004.10.17
Исталляция клиент-серверного приложения с БД Interbase


14-1096555117
X9
2004-09-30 18:38
2004.10.17
Помехи в FruityLoops 3.5





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский