需要绿道中的联接查询



有人可以创建一个Greendao(或android sqllite)查询来获得与下一个SQL查询相同的结果吗?

选择 B.*,从 MAINCATEGORYS_TO_LISTINGS A 中选择a.MAIN_CATEGORY_ID 在 b._id=a.MAIN_CATEGORY_ID 上连接 APMAIN_CATEGORY B,其中 listing_id=10120

你可以在GreenDao中使用queryRaw()方法。

如果我理解您要正确执行的操作,例如:

session.getMainCategoryDao().queryRaw(
    " inner join " + MainCategoryToListingsDao.TABLENAME + " MCL " 
    + " on T._id = MCL." + MainCategoryToListingsDao.Properties.MainCategoryId.columnName 
    + " where MCL." + MainCategoryToListingsDao.Properties.ListingId.columnName 
    + " = ?", listing.getId());

它有点丑,但应该可以工作。当然,您必须根据 DAO 的命名方式以及可能您命名属性的方式进行修改。但是当GreenDao在查询中命名你的主表时,它被T锯齿化,主键_id

他们休息你可以通过使用 DAO 的属性来拉动。

这将在即将发布的 greenDAO 1.4 中得到支持。如果需要,您可以从"join"分支构建greenDAO的早期版本:https://github.com/greenrobot/greenDAO/tree/join

相关内容

  • 没有找到相关文章

最新更新