Tous les produits
Search
Centre de documentation

AnalyticDB:REPLACE SELECT FROM

Dernière mise à jour :Aug 20, 2026

REPLACE SELECT FROM copie des enregistrements d'une table (ou d'une vue) vers une autre en temps réel. Pour chaque enregistrement, la commande vérifie si la clé primaire existe déjà dans la table cible. Si tel est le cas, elle supprime l'enregistrement existant et insère le nouveau. Sinon, elle insère directement l'enregistrement.

Fonctionnement

Pour chaque enregistrement copié, AnalyticDB for MySQL exécute les étapes suivantes :

  1. Tentative d'insertion de l'enregistrement dans la table cible.

  2. En cas de conflit de clé primaire, suppression de l'enregistrement conflictuel.

  3. Insertion du nouvel enregistrement.

Cas d'utilisation de REPLACE SELECT FROM

Utilisez REPLACE SELECT FROM pour écraser des enregistrements existants selon les correspondances de clés primaires, par exemple afin d'actualiser une table récapitulative avec des données source mises à jour.

Syntaxe

REPLACE INTO table_name
[(column_name, ...)]
query;

Paramètres

Paramètre Description
table_name Nom de la table cible. La table doit exister avant l'exécution de l'instruction.
column_name (Facultatif) Colonnes dans lesquelles copier les données. Si vous les spécifiez, les colonnes de la clause SELECT doivent correspondre aux colonnes listées, dans le même ordre et avec des types de données compatibles.
query Instruction SELECT FROM TABLE ou SELECT FROM VIEW définissant les enregistrements à copier.

Prérequis

  • La table cible existe.

Exemple

Copiez trois colonnes de la table customer vers la table new_customer en écrasant tout enregistrement existant dont la clé primaire correspond.

REPLACE INTO new_customer (customer_id, customer_name, phone_num)
  SELECT customer_id, customer_name, phone_num FROM customer
  WHERE customer.customer_name = 'Alan';