简体   繁体   English

jpql查询中的date_trunc function

[英]date_trunc function in jpql query

I am really stuck with date_trunc funtion in JPQL.我真的被 JPQL 中的 date_trunc 函数困住了。

My query is:我的查询是:

@Query("SELECT c.name AS name, SUM(c.salary) AS salary FROM SalaryTable AS c GROUP BY c.name, date_trunc('year' c.savedtimestamp)") 

I get the exception:我得到了例外:

has 'date_trunc' and '('year' c.savedtimestamp)' that are not separated by a comma.\n[197, 203] The identification variable ''year'' is not following the rules for a Java identifier.","\tat org.eclipse.persistence.internal.jpa.jpql.HermesParser.buildException(HermesParser.java:157)","\tat org.eclipse.persistence.internal.jpa.jpql.HermesParser.validate(HermesParser.java:336)","\tat org.eclipse.persistence.internal.jpa.jpql.HermesParser.populateQueryImp(HermesParser.java:280)","\tat有 'date_trunc' 和 '('year' c.savedtimestamp)' 没有用逗号分隔。\n[197, 203] 标识变量 ''year'' 不遵循 ZD52387880E1EA22817A72D375921381 标识符的规则。", "\tat org.eclipse.persistence.internal.jpa.jpql.HermesParser.buildException(HermesParser.java:157)","\tat org.eclipse.persistence.internal.jpa.jpql.HermesParser.validate(HermesParser.java: 336)","\tat org.eclipse.persistence.internal.jpa.jpql.HermesParser.populateQueryImp(HermesParser.java:280)","\tat

Can you help me in this regard?你能在这方面帮助我吗?

Regards, Stephan问候,斯蒂芬

Should be:应该:

date_trunc('year', c.savedtimestamp)

Note the ',' per the error message"请注意错误消息中的“,”

has 'date_trunc' and '('year' c.savedtimestamp)' that are not separated by a comma

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM