Question

Quelle est la meilleure façon d'Oracle 9i pour obtenir la différence entre deux dates, y compris les temps? Quelque chose comme la fonction Timespan en C #.

Merci, Chak

Était-ce utile?

La solution

Vous pouvez exprimer la différence en tant que nombre numérique de jours, ou en tant que type de données d'intervalle: http://download.oracle.com/docs/cd/B10501_01/server.920/a96540/expressions9a.htm#1033525

Autres conseils

Lorsque vous soustrayez deux dates que vous obtenez la différence de jours. Si vous multipliez ce nombre par 24, vous avez la différence en heures. Multipliez ce nombre par 60, vous avez la différence en quelques minutes, etc.

Lorsque vous faites la soustraction entre les dates (type DATE), vous obtenez un nombre qui représente le nombre de jours (noter que ceci est d'un numéro (p, s) type, pas un ENTIER, comme beaucoup de gens T-SQL confus Oracle). Ensuite, vous pouvez convertir ce nombre en secondes en multipliant par 24 * 60 * 60.

n_diff := ABS(date1 - date2) * 24*60*60;
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top