USO EclipseLink 2.4.1
cambie
Código:
Select a.usuario from Actividad a...
por
Select a from Actividad a
ya que quiero Actividades en la consulta.
Despues probe solo con el query que me escribiste y tiene el mismo comportamiento, me devuelve los nombre que se parecen (LIKE) a lo que le envio, pero no regresa los nullos.
despues probee solo la primera subconsulta (la del null)
Código:
Select a from Actividad a where a.usuario in (select a2.usuario from Actividad a2 where a2.usuario IS NULL)
y me devuelve 0 valores, despues, solo por probar cambie la condicion a is not null
Código:
Select a from Actividad a where a.usuario in (select a2.usuario from Actividad a2 where a2.usuario IS NO NULL)
y me devuelve todos los valores de mi tabla que no son nulos (89 me parece)
con esto parece ser que el IN esta correcto, pero no funciona el Is NULL
que puedo hacer? he pensado en usar una sql nativa, ya que he conseguido un codigo que me sirve, pero tengo como otras 5 o 6 condiciones que deben cumplirse y la complejidad del query subiria muchisimo
asi que no creo que sea una opcion viable
otra cosa, no se si sea porque Actividad tiene una relacion UnoaUno con Usuario
@OneToOne
private Usuario usuario;