[英]how to write the sql queries to 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
如何在休眠状态下编写以上查询? 我尝试了很多事情,但没有得到任何解决方案。 如果我在休眠状态下使用to_char()
,则会产生意外的令牌错误。
您不必使用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';
此处无需使用to_char()
方法。 您可以在Dao Implementation类中简单地使用此查询。
多年:
session.createSQLQuery("select * from table where year(date) = :year")
.setParameter("year",2018)
.list();
几个月
session.createSQLQuery("select * from table where month(date) = :month")
.setParameter("month",05)
.list();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.