Brandon Metcalf <brandon@geronimoalloys.com> writes:
> For some reason this doesn't give me satisfaction that it's written
> optimally, but I haven't found another way.
> SELECT round(CAST ((EXTRACT(EPOCH FROM clockout)
> -EXTRACT(EPOCH FROM clockin))/3600 AS NUMERIC),2) AS hours
> FROM timeclock;
> The clockin and clockout columns are of type timestamp.
timestamp, or timestamptz? extract(epoch from timestamptz) is really
quite a cheap operation; there's no need to worry about performance
in that case. If what's bothering you is ugliness, encapsulate this
as an inlineable SQL function.
regards, tom lane