java - jdbc postgres select avg() query takes very long to execute and returns null -


i'm trying fetch average of column postgresql db using java. here's query:

select cast(avg(qtime) varchar) average es_logger qdate >= '07-jul-15 10:00:00' , qdate < '07-jul-15 11:00:00' , ip = 'x.x.x.x' 

this query executes in 100ms in postgresql console takes 10 seconds execute , return when called java code.

here's code snippet:

ps = con.preparestatement(sql); rs = ps.executequery(); rs.next(); string d = rs.getstring(1); 

moreover, query returns null in java whereas gives proper answer in postgresql console.

i've tried running other select queries code , run fine.

can please me explain why might happening?

edit: i'm using java 1.7_51 postgresql 9.2 , driver postgresql-9.1-901.jdbc4.jar

finally got round figuring out.

turns out that:

1) long repsonse time database issue. same query works pretty quick on different postgresql database.

2) null values being returned because passing timestamp parameter string. passed timestamp suggested here , worked.


Comments