2016-03-20 8 views
0

Ich habe versucht, den Unterschied zwischen zwei Daten in Postgress zu bekommen,Bad Wert für Typ double für den gewünschten Zeitraum

select TO_TIMESTAMP(f_time)-TO_TIMESTAMP(s_time),date from my_table where tId='txt' group by s_time,date; 

ich das Ergebnis in pgAdmin und den Datentyp für die gleiche wie interval bekommen konnte.

In Java bekomme ich die folgende Ausnahme.

[org.hibernate.engine.jdbc.spi.SqlExceptionHelper] (default task-2) Bad value for type double : 00:16:40 
[stderr] (default task-2) javax.persistence.PersistenceException: org.hibernate.exception.DataException: could not execute query 
[stderr] (default task-2) at org.hibernate.jpa.spi.AbstractEntityManagerImpl.convert(AbstractEntityManagerImpl.java:1763) 
[stderr] (default task-2) at org.hibernate.jpa.spi.AbstractEntityManagerImpl.convert(AbstractEntityManagerImpl.java:1677) 
[stderr] (default task-2) at org.hibernate.jpa.internal.QueryImpl.getResultList(QueryImpl.java:458) 
[stderr] (default task-2) at .services..(.java:34) 
[stderr] (default task-2) at .$Proxy$_$$_WeldClientProxy.(Unknown Source) 
[stderr] (default task-2) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
[stderr] (default task-2) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
[stderr] (default task-2) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
[stderr] (default task-2) at java.lang.reflect.Method.invoke(Method.java:606). 

Kann ich den Datentyp in Text ändern?

+0

Was sind die tatsächlichen Typ und die tatsächlichen Werte von 'f_time' und' s_time'? – Patrick

+0

beide sind vom 'bigint' Typ – NaaN

Antwort

0

Schließlich beschloß ich, dies durch den Datentyp zu text Gießen wie folgt

cast (((TO_TIMESTAMP(f_time))-(TO_TIMESTAMP(s_time))) as text) 
Verwandte Themen