我有两个表StockItem和StockItemGroup。 StockItemGroupStockItem表生成的这些表之间存在多对多的关系。我需要查询查询与任何StockItemGroup无关的所有StockItems。我试过这段代码,但它不起作用:
QueryBuilder<StockItemEntity, Long> qbSI = stockItemDao.queryBuilder();
QueryBuilder<StockItemGroupStockItemEntity, Long> qbSIG_SI = stockItemGroupStockItemDao.queryBuilder();
List<StockItemEntity> stockItemEntitiesWithoutGroup = null;
qbSI.where().not().exists(qbSIG_SI);
stockItemEntitiesWithoutGroup = qbSI.query();
答案 0 :(得分:0)
我找到了解决方案。我缺少映射两个表之间关系的代码:
qbSIG_SI.where().eq(StockItemGroupStockItemEntity.STOCK_ITEM_ID, new ColumnArg(StockItemEntity.TABLE_NAME, StockItemEntity.ID_FIELD_NAME));