2016-08-09 83 views
2

我需要從具有列posted_date這是一個Timestamp一個MySQL表抓住一些記錄。我需要通過僅比較月份來過濾記錄。例如,我希望僅在本月發佈所有記錄。的Hibernate查詢日期比較每個月只有

我想在這個環節Hibernate query date compare on year and month only

給出,但我得到以下錯誤

line 1:106: unexpected token: to_char 
    at org.hibernate.hql.internal.antlr.HqlBaseParser.queryRule(HqlBaseParser.java:769) 

如何通過採取每月參數僅與一個月比較HQL?

回答

2

使用MONTH(...)HQL這樣的功能:

select so from SomeObject so where MONTH(so.date) = MONTH(:date) 

select so from SomeObject so where TO_CHAR(so.date, 'MM') = :month_as_string 
+0

'從SomeObject所以這裏MONTH(so.date)=:date'工作得很好,謝謝。您。 –

+0

如果可以幫助您,請將此答案標爲正確。 – kemot90

+0

如何將此標記爲正確答案? –