首页 >数据库 >Oracle >oracle中insert into select用法

oracle中insert into select用法

下次还敢
下次还敢原创
2024-05-08 18:21:211004浏览

INSERT INTO SELECT 语句用于将一个表中的数据插入到另一个表。它支持插入所有列或特定列,并可以通过 WHERE 子句使用条件进行筛选。通过指定目标表、列列表和源表,可轻松地从一个表将数据转移到另一个表。

oracle中insert into select用法

Oracle 中的 INSERT INTO SELECT 用法

含义:

INSERT INTO SELECT 语句将一个表中的数据插入到另一个表中。

语法:

<code>INSERT INTO <目标表>
SELECT <列列表>
FROM <源表>
[WHERE <条件>]</code>

参数:

  • <目标表>:要插入数据的目标表。
  • <列列表>:要插入的列,可以指定所有列或特定列。
  • <源表>:要从其获取数据的源表。
  • [WHERE <条件>]:可选的条件,用于过滤源表中的数据。

用法:

  1. 插入所有列:

    如果 列列表 中没有指定列,则会插入源表中的所有列。

    <code>INSERT INTO target_table
    SELECT *
    FROM source_table;</code>
  2. 插入特定列:

    如果 列列表 中指定了特定列,则只插入指定的列。

    <code>INSERT INTO target_table (col1, col2)
    SELECT col1, col2
    FROM source_table;</code>
  3. 使用条件:

    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中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn