greenDAO:比较两个属性

时间:2016-07-19 11:44:26

标签: android sqlite greendao

我确信这应该很简单,但我似乎无法找到解决方案。

假设我有一个包含5个字段的表(id,颜色,大小,扫描,预期)

如何获得期望值大于扫描值的所有行?

我试过了

mydao.Property.Expected.gt(mydao.Property.Scanned).list()

但这会返回0行。使用LOG_SQL布尔我可以看到它正在寻找属性字段,而不是字段的值。

D/greenDAO: Values for query: [0, de.greenrobot.dao.Property@33ecce97]

1 个答案:

答案 0 :(得分:6)

greenDAO的QueryBuilder API不支持(尚未)。您必须使用raw query

看起来像这样:

Query myQuery = myDao.queryBuilder().where(new StringCondition(
    Property.Expected.columnName + " > " + Property.Scanned.columnName)).build();

PS。:如果你想跟踪未来的greenDAO版本,我还创建了一个feature request

相关问题