Hi friends,
How to calculate difference between columns of current and previous/next row?
Let’s say, you want to monitor how often products are sold from your store.
i.e.
You want difference between current and previous SELL_DATE then you can write query as follows:
SELECT TO_CHAR(SELL_DATE, 'DD-MON-YYYY HH24:MI:SS'),
TO_CHAR(LAG(SELL_DATE) OVER (ORDER BY SELL_DATE),
'DD-MON-YYYY HH24:MI:SS') AS SELL_DATE_PREV,
(SELL_DATE - LAG(SELL_DATE) OVER (ORDER BY SELL_DATE))
* 24 * 60 * 60 AS DIFF_IN_SECONDS
FROM PRODUCT_SALES
ORDER BY SELL_DATE DESC;
More Info: Oracle-Base: Lag Lead Analytic Functions
Cloud Architect at Zero Integration Ltd.
14+ years of experience with Oracle, Linux, Networking, Data Centre and Public Clouds. Played major role in development, implementation and management of SaaS CRM using AI and ML. Integrated 15+ Client CRM across United Kingdom and Australia.
Leave a Reply