我有一个数据库包括eventType和事件表
eventType
- id
- name
event
- id
- name
- location
- eventType_id
- eventSubType_id
其中eventType_id和eventTypeSubtype_id引用eventType表。
我想用hibernate做的是选择所有具有以下内容的事件:
我做了:
EventCriteria.createCritria("eventType").add(Expression.in("id"),new Long [] {2L,6L});
EventCriteria.createCriteria("eventSubType").add(Expression.in("id", new Long [] {2L,null}));
输出不考虑具有id(2或6)的eventype且eventSubType为null的事件,它仅考虑具有id(2或6)的eventtype且eventSubType为(2)的事件。输出必须是
谢谢
答案 0 :(得分:2)
假设您的eventType数字是ids ...
select event
from Event event
where event.eventType_id in (2,6)
and (eventSubType is null
or eventSubType = 2)
答案 1 :(得分:0)
您使用eq
代替in
...