@SuppressWarnings("unchecked")
    protected void addKeyConditions(FilteredClause<?> query) {
        List<? extends Path<?>> keys = getKeys();
        for (int i = 0; i < columns.size(); i++) {
            if (keys.contains(columns.get(i))) {
                if (values.get(i) instanceof NullExpression) {
                    query.where(ExpressionUtils.isNull(columns.get(i)));
                } else {
                    query.where(ExpressionUtils.eq(columns.get(i),(Expression) values.get(i)));
                }
            }
        }
    }
Execute the clause and return the generated keys as a ResultSet

@return result set with generated keys
querydsl-sql/src/main/java/com/querydsl/sql/dml/SQLMergeClause.java