Todos os produtos
Search
Central de documentação

AnalyticDB:REPLACE INTO

Última atualização: Jun 27, 2026

Semanticamente, REPLACE INTO combina as operações exclua e INSERT: o comando substitui uma linha existente quando a chave primária corresponde ou insere uma nova linha caso não haja correspondência.

Sintaxe

REPLACE INTO table_name [(column_name,...)] VALUES ({Constant|NULL|DEFAULT},...),(...),...

Parâmetros

Parâmetro

Descrição

table_name

Tabela de destino.

column_name

(Opcional) Colunas a serem preenchidas. Se omitido, os valores serão inseridos em todas as colunas seguindo a ordem definida.

`Constant

NULL

DEFAULT`

Valor para cada coluna: uma constante literal, NULL ou o valor DEFAULT da coluna.

Nota

A chave primária pode ser composta por uma única coluna ou abranger múltiplas colunas (chave primária composta).

Funcionamento

Ao executar REPLACE INTO, o sistema verifica se já existe uma linha com a mesma chave primária:

  • Linha existente — o sistema exclui a linha atual e insere a nova.

  • Linha inexistente — o sistema insere a linha diretamente.

Exemplos

Inserir uma única linha com nomes de colunas

REPLACE INTO customer(customer_id,customer_name,phone_num,city_name,sex,id_number,home_address,office_address,age,login_time)
VALUES
(002367,'Bob','13900001234','Hangzhou',0,'987300','WestLake','CloudTown',23,'2018-03-02 10:00:00');

Inserir várias linhas sem nomes de colunas

Omita a lista de colunas ao fornecer valores para todas elas na ordem definida.

REPLACE INTO customer VALUES
(002367,'John','13900001111','Hangzhou',0,'987300','WestLake','CloudTown',23,'2018-03-02 10:00:00'),
(002368,'Adam','13900002222','Hangzhou',0,'987300','WestLake','CloudTown',28,'2018-08-01 11:00:00'),
(002369,'Brook','13900003333','Hangzhou',1,'987300','WestLake','CloudTown',35,'2018-09-12 08:11:00');