Существует другая библиотека, названная ExtremeSwank. Эта статья Andrew Arnott, dotnetopenid разработчика, могла бы также помочь Вам" Почему DotNetOpenID как Ваша предпочтительная библиотека C# OpenID ".
В Oracle можно вычитать даты. Это даст вам разницу в днях. Умножьте на 24, чтобы получить часы и т. Д.
SQL> select oldest - creation from my_table;
Если ваша дата хранится в виде символьных данных, вы должны сначала преобразовать ее в тип даты.
SQL> select 24 * (to_date('2009-07-07 22:00', 'YYYY-MM-DD hh24:mi')
- to_date('2009-07-07 19:30', 'YYYY-MM-DD hh24:mi')) diff_hours
from dual;
DIFF_HOURS
----------
2.5
Примечание :
Этот ответ относится к датам представлен типом данных Oracle DATE
.
Oracle также имеет тип данных TIMESTAMP
, который также может представлять дату (со временем). Если вычесть значения TIMESTAMP
, вы получите ИНТЕРВАЛ
; для извлечения числовых значений используйте функцию EXTRACT
.
Вы можете использовать функцию to_timestamp для преобразования дат в отметки времени и выполнения операции вычитания.
Что-то вроде:
SELECT
TO_TIMESTAMP ('13.10.1990 00:00:00','DD.MM.YYYY HH24:MI:SS') -
TO_TIMESTAMP ('01.01.1990:00:10:00','DD.MM.YYYY:HH24:MI:SS')
FROM DUAL
$sql="select bsp_bp,user_name,status,
to_char(ins_date,'dd/mm/yyyy hh12:mi:ss AM'),
to_char(pickup_date,'dd/mm/yyyy hh12:mi:ss AM'),
trunc((pickup_date-ins_date)*24*60*60,2),message,status_message
from valid_bsp_req where id >= '$id'";