java - 如何将sql查询写入hibernate

标签 java hibernate

id   name     date
1.   ask    2018-04-25 12:30:59
2.   msk    2018-04-25 12:40:43
3.   sdf    2017-05-25 12:42:34

id=int---->in java id-->int
name=varchar(25)----> in java name-->string
date=datetime------->in java date--->Timestamp

my sql query=select * from table where year(date)='2018';

o/p:1.   ask    2018-04-25 12:30:59
    2.   msk    2018-04-25 12:40:43
select * from table where month(date)='05'
o/p:3.   sdf    2017-05-25 12:42:34


please help me i dont know 
how to write this query in hibernate 

如何在hibernate中编写上述查询?我尝试了很多事情,但没有得到任何解决方案。如果我在 hibernate 中使用 to_char() ,它将给出意外的 token 错误。

最佳答案

您不必使用 to_char() 函数。 Hibernate 支持年份和日期函数。

引用此链接:https://docs.jboss.org/hibernate/orm/3.3/reference/en/html/queryhql.html 并查看“14.10.表达式”。

所以你的 hql 看起来就像这样:

select t from table t where YEAR(t.date)='2018';

and select t from table t where MONTH(t.date)='05';

关于java - 如何将sql查询写入hibernate,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50059187/

相关文章:

java - Spring HATEOAS 和 HAL : Change array name in _embedded

java - 将MouseListener添加到程序中

java - 我如何从使用 Hibernate Jpa 的多对多关系创建的关联表中获取结果

java - 如何使用hibernate在spring中获取实体类中的inet

java - Hibernate ManyToMany 映射更新非拥有方

java - 软键盘隐藏EditText

java - 寻找更高效的堆排序?

java - Arraylist<Object []> 到 Object[][]

java - 如何使用 hibernate 4 实现自定义线程安全序列?

使用 c3p0 和 Tomcat : too many connections hibernate