2011-04-29 55 views
6

我想在Hibernate中實現以下查詢的效果,但我無法找到一種方法來做到這一點。在休眠中的正則表達式

select e.TITLE from EVENTS e where e.TITLE REGEXP 'fri|pro'; 

有人可以幫忙嗎?

回答

6

Hibernate QL不支持正則表達式(並且一些引擎對正則表達式的支持很差)。 您可以將您的查詢是

select e.TITLE from EVENTS e where (e.TITLE = 'fri' OR e.TITLE = 'pro'); 

select e.TITLE from EVENTS e where e.TITLE in ('fri','pro'); 

但對於真正正則表達式的支持,你必須編寫自定義的SQL(如果你的數據庫不支持正則表達式的話)

+0

謝謝,但在我的專欄中的價值將是這樣的'朋友**親'(**只是分隔符)。我如何解決這個問題? – Shwetanka 2011-04-29 12:33:00

+0

'select e.TITLE from EVENTS e where e.TITLE like'fri%pro'or e.TITLE like'%fri%'or e.TITLE like'%pro%'' 選擇你喜歡什麼樣的「喜歡」: - )即哪一個符合你的條件,因爲它們還不清楚。 – mazaneicha 2011-04-29 13:10:54

相關問題