2011-04-29 12 views
6

Quiero lograr el efecto de la siguiente consulta en Hibernate, pero no puedo encontrar una manera de hacerlo.Consulta Regex en Hibernate

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

¿Alguien puede ayudar?

Respuesta

6

Hibernate QL no admite expresiones regulares (y algunos motores tienen un soporte de expresiones regulares muy pobre). Puede transformar su consulta para ser

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

o

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

Pero para apoyo real expresiones regulares que tendrá que escribir SQL personalizada (si su base de datos hace expresiones regulares de apoyo en absoluto)

+0

Gracias, pero el valor en mi columna será como este 'fri ** pro' (** son solo delimitadores). ¿Cómo puedo resolver esto? – Shwetanka

+0

'seleccione e.TITLE de EVENTOS e donde e.TITLE como 'fri% pro' O e.TITLE como '% fri%' O e.TITLE como '% pro%'' Elija qué "me gusta" más: -) es decir, cuál cumple con sus condiciones ya que aún no están claras. – mazaneicha

Cuestiones relacionadas