public static SqlExpressionBuilder create(SqlJsonDB db, ChildFilter filter, String path) { String idx = path+"#"+filter.field(); if( !db.getIndexPaths().contains(idx) ) { throw new JsonDBException("You can only filter on fields that are indexed."); } PropertySqlExpressionBuilder left = new PropertySqlExpressionBuilder(idx); LiteralSqlExpressionBuilder right = new LiteralSqlExpressionBuilder(filter.value()); return new BinarySqlExpressionBuilder(db, left, toSqlOp(filter.op()), right); }