diff --git a/jOOQ/src/main/java/org/jooq/InsertQuery.java b/jOOQ/src/main/java/org/jooq/InsertQuery.java index 1d631d1110..1676679609 100644 --- a/jOOQ/src/main/java/org/jooq/InsertQuery.java +++ b/jOOQ/src/main/java/org/jooq/InsertQuery.java @@ -336,6 +336,13 @@ public interface InsertQuery extends StoreQuery, Insert @Support void setSelect(Field[] fields, Select select); + /** + * Use a SELECT statement as the source of values for the + * INSERT statement. + */ + @Support + void setSelect(Collection> fields, Select select); + /** * {@inheritDoc} *

diff --git a/jOOQ/src/main/java/org/jooq/impl/InsertQueryImpl.java b/jOOQ/src/main/java/org/jooq/impl/InsertQueryImpl.java index 821d116ba7..06030898cc 100644 --- a/jOOQ/src/main/java/org/jooq/impl/InsertQueryImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/InsertQueryImpl.java @@ -273,7 +273,12 @@ final class InsertQueryImpl extends AbstractStoreQuery impl @Override public final void setSelect(Field[] f, Select s) { - insertMaps.addFields(Arrays.asList(f)); + setSelect(Arrays.asList(f), s); + } + + @Override + public final void setSelect(Collection> f, Select s) { + insertMaps.addFields(f); select = s; }