(mysql.info) insert-select
Info Catalog
(mysql.info) insert
(mysql.info) insert
(mysql.info) insert-delayed
13.2.4.1 `INSERT ... SELECT' Syntax
...................................
INSERT [LOW_PRIORITY | HIGH_PRIORITY] [IGNORE]
[INTO] TBL_NAME [(COL_NAME,...)]
SELECT ...
[ ON DUPLICATE KEY UPDATE COL_NAME=EXPR, ... ]
With `INSERT ... SELECT', you can quickly insert many rows into a table
from one or many tables. For example:
INSERT INTO tbl_temp2 (fld_id)
SELECT tbl_temp1.fld_order_id
FROM tbl_temp1 WHERE tbl_temp1.fld_order_id > 100;
The following conditions hold for a `INSERT ... SELECT' statements:
* Specify `IGNORE' to ignore rows that would cause duplicate-key
violations.
* `DELAYED' is ignored with `INSERT ... SELECT'.
* The target table of the `INSERT' statement may appear in the
`FROM' clause of the `SELECT' part of the query. (This was not
possible in some older versions of MySQL.)
* `AUTO_INCREMENT' columns work as usual.
* To ensure that the binary log can be used to re-create the
original tables, MySQL does not allow concurrent inserts for
`INSERT ... SELECT' statements.
* Currently, you cannot insert into a table and select from the same
table in a subquery.
In the values part of `ON DUPLICATE KEY UPDATE', you can refer to
columns in other tables, as long as you do not use `GROUP BY' in the
`SELECT' part. One side effect is that you must qualify non-unique
column names in the values part.
Info Catalog
(mysql.info) insert
(mysql.info) insert
(mysql.info) insert-delayed
automatically generated byinfo2html