Find the difference between two dates in hours and minutes
<p>I am trying to come up with a way to calculate the difference between two dates in hours and minutes.</p>

<p>I have a table with two columns <code>Start Date</code> and <code>TimeStamp</code>: </p>

<pre><code>Start Date              Timestamp
--------------------    --------------------
05/JAN/2016 05:30:00    01/JAN/2016 10:02:29
30/JAN/2016 06:10:00    18/JAN/2016 19:24:00
23/JAN/2016 06:10:00    08/JAN/2016 10:46:00
05/JAN/2016 05:30:00    30/DEC/2015 16:07:00
23/JAN/2016 06:10:00    08/JAN/2016 12:18:05
01/JAN/2016 14:10:00    16/DEC/2015 16:36:56
01/JAN/2016 14:10:00    16/DEC/2015 11:41:00
03/JAN/2016 05:15:00    02/JAN/2016 11:23:15
03/JAN/2016 05:15:00    02/JAN/2016 07:52:00
</code></pre>

<p>I use the query:</p>

<pre><code>select ROUND(RM_LIVE.CRWGNDACTTIME.GNDACTSTARTRM_LIVE.TRANSACTIONLOG.TIMESTAMP,2)
                       AS "Difference"
  from Transaction;
</code></pre>

<p>The query result is:</p>

<pre><code>0.002721428571428571428571428571428571428571
0.008178571428571428571428571428571428571429
0.0105785714285714285714285714285714285714
0.003971428571428571428571428571428571428571
</code></pre>

<p>Expected result:</p>

<pre><code>133:23
 91:28
355:24
353:52
274:46
</code></pre>

<p>I got that expected result in Excel using this formula:</p>

<pre><code>= MAX(T982+U982,W982+V982) - MIN(T982+U982,W982+V982)
</code></pre>

<p>How can I get the same result in Oracle SQL?</p>

<pre><code>CASE
  WHEN trunc(24 * abs(RM_LIVE.TRANSACTIONLOG.TIMESTAMP
- RM_LIVE.CRWGNDACTTIME.GNDACTSTART))
  ||':'|| lpad(round(60 * mod(24 * abs(RM_LIVE.TRANSACTIONLOG.TIMESTAMP
- RM_LIVE.CRWGNDACTTIME.GNDACTSTART), 1)), 2, '0')  &lt;= '11:00' THEN     'LESS'
ELSE 'MORE'
END AS "mORE/LESS",


386:29  1055    01-JAN-16   16-DEC-15   MORE
**102:41    1055    08-NOV-15   04-NOV-15   LESS**
381:33  1055    01-JAN-16   16-DEC-15   MORE
176:45  1055    20-NOV-15   12-NOV-15   MORE
**119:54    1055    08-NOV-15   03-NOV-15   LESS** 
</code></pre>