Convert a SQL query in Java Persistence Query Language (JPQL) -


i'm having little problem convert sql query jpql:

select max(datepurchase) purchases userid = id , date_trunc('day',datepurchase) in (select distinct (date_trunc('day',datepurchase)) day purchases userid = id , datepurchase < initialdate , datepurchase > finaldate) group date_trunc('day',datepurchase) 

this sql working well, returns de last purchase per day made user. tried same, in jpql:

query query = em.createquery("select u max(u.datepurchase) purchases u u.userid.id = :id , func('day',u.datepurchase)" +                 "in (select distinct (func('day',u.datepurchase)) day purchases u.userid.id = :id , u.datepurchase < :finaldate , u.datepurchase > :inicialdate) group func('day',u.datepurchase)");  query.setparameter("id", idusuario); query.setparameter("datainicial", datainicial); query.setparameter("datafinal", datafinal); list<movsaldo> saldos = (list<movsaldo>) query.getresultlist();  em.gettransaction().commit(); 

the errors are: "the in expression not have valid expression." "an identification variable must provided range variable declaration."

probably not difficult, have spent little frustrating time in it. can please me?

although answer late still posted because might in future.

in nested select have put identifier entity working with: from purchases p , update things (func('day',u.datepurchase)) (func('day',p.datepurchase))

best!


Comments

Popular posts from this blog

java - Jmockit String final length method mocking Issue -

asp.net - Razor Page Hosted on IIS 6 Fails Every Morning -

c++ - wxwidget compiling on windows command prompt -