Thursday, February 19, 2009

Subtracting DateTime values in PS Query

In PS Query, DateTime (e.g. BEGINDTTM) field is changed to the TO_CHAR(A.BEGINDTTM,'YYYY-MM-DD-HH24.MI.SS."000000"') .

To subtract a DateTime field from another Datetime field, following expression should be created:

TO_DATE(SUBSTR(A.ENDDTTM,1,16),'YYYY-MM-DD-HH24.MI') - TO_DATE(SUBSTR(A.BEGINDTTM,1,16),'YYYY-MM-DD-HH24.MI')


The sql of the query would be:

SELECT TO_CHAR(A.BEGINDTTM,'YYYY-MM-DD-HH24.MI.SS."000000"'), TO_CHAR(A.ENDDTTM,'YYYY-MM-DD-HH24.MI.SS."000000"'), TO_DATE(SUBSTR( TO_CHAR(A.ENDDTTM,'YYYY-MM-DD-HH24.MI.SS."000000"'),1,16),'YYYY-MM-DD-HH24.MI') - TO_DATE(SUBSTR( TO_CHAR(A.BEGINDTTM,'YYYY-MM-DD-HH24.MI.SS."000000"'),1,16),'YYYY-MM-DD-HH24.MI')
FROM PS_PMN_PRCSLIST A



Hope this is helpful.

Cheers.