0

我需要帮助将 SQL 查询转换为我可以在游戏中使用的东西!

原始查询如下所示:

SELECT * FROM `triplestore`
  WHERE `owning_admin_id` IS NOT NULL
  AND `is_public` IS true;

我的目标是得到类似的东西

Triplestore.find.where()
  .isNotNull("owningAdmin")
  .is("is_public", true)
  .findList();

这甚至可能还是我必须使用 JPQL?该查询会是什么样子?

在此先感谢,
哈根

4

3 回答 3

2

您可以使用以下and()方法:

Triplestore.find.where().and(Expr.isNotNull("owningAdmin"),Expr.eq("is_public", true)).findList();

不要忘记添加com.avaje.ebean.Expr导入。

于 2012-08-24T12:18:27.283 回答
0

在休眠标准中:

List<Triplestore> triplestores = 
    (List<Triplestore>) session.createCriteria(Triplestore.class)
    .add( Restrictions.isNotNull("owning_admin_id") )
    .add( Restrictions.eq("is_public", Boolean.TRUE) ).list();

问候,

于 2012-08-24T12:24:02.693 回答
0

你说“我可以在游戏中使用的东西!” ,所以我假设任何第三方库都可以。这是使用jOOQ的解决方案(免责声明:我为供应商工作)。

我假设你在这里使用 jOOQ 的代码生成器:

Result<TriplestoreRecord> result =
ctx.selectFrom(TRIPLESTORE)
   .where(TRIPLESTORE.OWNING_ADMIN_ID.isNotNull())
   .and(TRIPLESTORE.IS_PUBLIC)
   .fetch();
于 2018-11-22T14:53:28.113 回答