在数据库管理中,经常需要将数据从一个表倒入另一个表,这在数据迁移、数据备份或数据合并时非常有用。在 SQL 中,可以通过 INSERT INTO 语句轻松实现此操作。
INSERT INTO 语句
INSERT INTO 语句的基本语法如下:
sql
INSERT INTO target_table (column1, column2, ...)
SELECT column1, column2, ...
FROM source_table
WHERE condition;
* **target_table**:目标表名
* **source_table**:源表名
* **column1, column2, ...**:要插入的目标表中的列名,与源表中的列名对应
* **WHERE condition**:可选的条件子句,用于筛选源表中的要插入的行
示例代码
以下示例将源表 "customers" 中的数据倒入目标表 "new_customers":
sql
INSERT INTO new_customers (customer_id, customer_name, email)
SELECT customer_id, customer_name, email
FROM customers
WHERE active = 1;
此查询将从 "customers" 表中选择所有处于活动状态(active = 1)的客户数据,并将其插入 "new_customers" 表中。
注意事项
在使用 INSERT INTO 语句倒数据时,需要注意以下几点:
* 目标表中的列名和数据类型必须与源表中的列对应。
* 如果目标表已经存在数据,则新插入的数据将被附加到现有数据之后。
* 如果要覆盖现有数据,可以使用 TRUNCATE TABLE 或 DELETE 语句先清空目标表。
* WHERE 条件可以用于过滤源表中的数据,仅插入满足特定条件的行。