REPLACE¶
说明¶
REPLACE 语句用于插入数据到表中。如果指定的主键或唯一索引已经存在,REPLACE 会先删除旧记录,然后插入新记录。
参数¶
table_name
一个现有的表或视图。
partition_clause
subpartition_clause
可选部分,用于指定分区或子分区。
DEFAULT VALUES
表示插入该表的所有列都使用默认值。
column_list
可选部分,指定要插入的列名。
column
列名,可以列出一个或多个列,以逗号分隔。
values_list
使用 VALUES 关键字,后跟一个或多个值的元组
select_stmt
一个SELECT语句,其结果将被插入到表table_name中。关于SELECT语句,其参见 SELECT 。
示例¶
CREATE TABLE T1 (A INT PRIMARY KEY, B INT);
REPLACE INTO T1 VALUES (1,1);
SELECT * FROM T1;--与原表中的数据没有冲突,直接插入新数据
A(int) |B(int) |
------------------------
1 |1 |
总数目:1
REPLACE INTO T1 VALUES (1,2);
SELECT * FROM T1;--新插入的数据有主键冲突,删除旧数据(1,1)后插入新数据(1,2)
A(int) |B(int) |
------------------------
1 |2 |
总数目:1