INSERT INTO SELECT 语句用于将一个表中的数据插入到另一个表。它支持插入所有列或特定列,并可以通过 WHERE 子句使用条件进行筛选。通过指定目标表、列列表和源表,可轻松地从一个表将数据转移到另一个表。
含义:
INSERT INTO SELECT 语句将一个表中的数据插入到另一个表中。
语法:
<code>INSERT INTO <目标表> SELECT <列列表> FROM <源表> [WHERE <条件>]</code>
参数:
用法:
插入所有列:
如果 列列表
中没有指定列,则会插入源表中的所有列。
<code>INSERT INTO target_table SELECT * FROM source_table;</code>
插入特定列:
如果 列列表
中指定了特定列,则只插入指定的列。
<code>INSERT INTO target_table (col1, col2) SELECT col1, col2 FROM source_table;</code>
使用条件:
WHERE
子句可用于过滤源表中的数据,只插入满足条件的行。
<code>INSERT INTO target_table SELECT * FROM source_table WHERE column_name > 10;</code>
示例:
假设我们有以下两个表:
<code>source_table: +----+----------+ | id | name | +----+----------+ | 1 | John Doe | | 2 | Jane Smith | | 3 | Mary Jones | +----+----------+ target_table: +----+----------+ | id | name | +----+----------+ | 4 | Bob Smith | | 5 | Sue Brown | +----+----------+</code>
要从 source_table
中插入所有行到 target_table
中,我们可以使用以下查询:
<code>INSERT INTO target_table SELECT * FROM source_table;</code>
插入后,target_table
将如下所示:
<code>+----+----------+ | id | name | +----+----------+ | 4 | Bob Smith | | 5 | Sue Brown | | 1 | John Doe | | 2 | Jane Smith | | 3 | Mary Jones | +----+----------+</code>
以上是oracle中insert into select用法的详细内容。更多信息请关注PHP中文网其他相关文章!