/** * Create an left not in right expression * * @param <D> * @param left * @param right * @return */ public static <D> Predicate notIn(Expression<D> left, Collection<? extends D> right) { if (right.size() == 1) { return neConst(left, right.iterator().next()); } else { return PredicateOperation.create(Ops.NOT_IN, left, ConstantImpl.create(right)); } }