Hallo,

ganz einfach:
Subtrahiere zwei Zeitmarken mit SQL.
Das Ergebnis ist ein Feld mit der Definition 20,6.
Stelle 1-4 = Differenz Jahre
Stelle 5-6 = Differenz Monate
Stelle 7-8 = Differenz Tage
Stelle 9-10 = Differenz Stunden
Stelle 11-12 = Differenz Minuten
Stelle 13-14 = Differenz Sekunden
Nachkommastellen = Differenz Mikro-Sekunden.

PHP-Code:
D                 DS                                                       
D DiffDate                      20S 6                                      
D   DiffYears                    4S 0 overlay
(DiffDate)                    
D   DiffMonths                   2S 0 overlay(DiffDate: *Next)             
D   DiffDays                     2S 0 overlay(DiffDate: *Next)             
D   DiffTime                          overlay(DiffDate: *Next)             
D     DiffHours                  2A   overlay(DiffTime)                    
D     DiffMinute                 2A   overlay(DiffTime: *Next)             
D     DiffSecond                 2A   overlay(DiffTime: *Next)             
D   DiffMSeconds                 6S 0 overlay(DiffDate: *Next)             
                                                                           
D Timestamp1      S               Z   inz(Z'2004-07-01-12.00.00.000000')   
D Timestamp2      S               Z   inz(Z'2003-07-01-08.30.45.000000')   
 *-------------------------------------------------------
C/EXEC SQL set :DiffDate  = :Timestamp1 - :Timestamp2     
c
/END-EXEC                                                
                                                          
C     DiffDate      Dsply                                 
C     DiffTime      Dsply 
Birgitta