2016-08-21 99 views
0

我有數據庫的數據學生。 並且有名爲'name'的字段,如何將條件查詢忽略大小寫? 我有數據ID = 1,名稱=約翰 我會得到從查詢數據在休眠,如果我查詢忽略大小寫名稱字段,這是我的代碼:hql - 如何在休眠中選擇條件查詢

List list = sessionFactory.getCurrentSession() 
       .createQuery("from Student where name = :param") 
       .setParameter("param", value) 
       .list(); 

如果IAM打字約翰或JOHN或約翰或JOHN或者等我會從我的數據庫中獲取數據。 如何解決?

+0

是所提供的答案是什麼你在哪裏找?如果是,請將答案標記爲正確的解決方案。如果不是,我可以爲你提供一個「解決方案」。 – DanielK

回答

0

使用在兩側小寫:

List list = sessionFactory.getCurrentSession() 
       .createQuery("from Student where lower(name) = :param") 
       .setParameter("param", value.toLowerCase()) 
       .list();