Insert multiple rows from other table - "Subquery returns more than 1 row"

mysql, sql, sql-insert

Solution

You don't need the `values` statement when using `insert . . . select`:

INSERT INTO table2(value)
    select distinct col1
    from table1;

Problem

I table 1 contains: ``` |col1| | 1 | | 2 | | 1 | | 3 | | 1 | | 2 | | 4 | | 2 | | 3 | | 1 | ``` and I have another table has a column name `val`, and my code is ``` INSERT INTO table2(value) VALUES ((select distinct col1 from table1)) ``` I got the #1242 - Subquery returns more than 1 row. How can I get multiple rows insert into my table2 ?

Original source

Related problems