mysql - 使用 hibernate 进行查询

标签 mysql hibernate

我有一个包含事件类型和事件表的数据库

eventType 

  - id
  - name

event

  - id 
  - name
  - location
  - eventType_id
  - eventSubType_id

其中 eventType_id 和 eventTypeSubtype_id 引用 eventType 表。

我想要对 hibernate 进行的操作是选择具有以下内容的所有事件:

  • 事件类型为 (2,6)
  • 和 (2,null) 中的 eventSubType

我做到了:

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)且 eventSubType 为 null 的事件,仅考虑事件类型为 id(2 或 6)且 eventSubType 为 (2) 的事件。输出必须是两者

谢谢

最佳答案

假设您的 eventType 编号是 id...

select event 
from Event event
where event.eventType_id in (2,6)
and (eventSubType is null
     or eventSubType = 2)

关于mysql - 使用 hibernate 进行查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2115930/

相关文章:

php - Mac Sierra 上用于慢速查询的 My.cnf 文件

mysql - 连接 RDBMS MySQL 版本 5.5.24-log 上的表

java - 如何最好地将长字符串保存到数据库?

java - 反序列化字符串缓冲区

mysql - Mariadb有时在Filesort上崩溃

mysql - 无法将数据从文件加载到 Mysql 表

java - hibernate 不会自动插入连接表

Hibernate 使用新对象更新现有实体

java - 在 Hibernate/JSF 应用程序中从 MySQL 数据库中检索 Blob

Php mysql - 获取最近几天的值和条目总数