需要在greendao中加入查询

时间:2015-06-19 17:08:07

标签: android sql greendao

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

从MAINCATEGORYS_TO_LISTINGS中选择b。*,a.MAIN_CATEGORY_ID     在b._id = a.MAIN_CATEGORY_ID上加入APMAIN_CATEGORY b,其中listing_id = 10120

2 个答案:

答案 0 :(得分:1)

您可以在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的属性拉。

答案 1 :(得分:0)

这将在greenDAO 1.4中得到支持,它将很快发布。如果想要你可以从“join”分支构建greenDAO以获得它的早期版本:https://github.com/greenrobot/greenDAO/tree/join