Dupliquer ou copier des lignes d’une table avec MySQL

Avec MySQL, vous pouvez dupliquer ou copier des lignes d’une table pour les insérer dans une autre ou la même table.

Partager :

Avec MySQL, il est possible de dupliquer ou de copier des lignes d’une table vers une autre table (ou bien dans la même table depuis MySQL 4.0.14) grâce à la commande INSERT SELECT. La syntaxe de la commande est la suivante :
 

INSERT [LOW_PRIORITY] [IGNORE] [INTO] nom_de_la_table [(liste des colonnes)] SELECT ...

Voici un exemple de son utilisation pour copier des colonnes d’une table vers une autre table :
 

INSERT INTO ma_table (colonne1, colonne2, colonne3, colonne4) SELECT colonne1, colonne2, colonne3, colonne4 FROM ma_table2 where id = 2;

Voici un second exemple pour copier des colonnes d’une table vers la même table et cette fois-ci, je choisis d’affecter la valeur X pour la colonne colonne1 de chaque ligne copiée :
 

INSERT INTO ma_table (colonne1, colonne2, colonne3, colonne4) SELECT 'X', colonne2, colonne3, colonne4 FROM ma_table where id = 2;

 

Partager :

Avez-vous trouvé cet article utile ?
Article utile ?
ℹ️ À savoir Ce formulaire est privé et ne permet pas de réponse.
Pour poser une question ou laisser un commentaire public, utilisez la zone de commentaires plus bas sur la page.

Logo LeCoinDuNet
💻 Besoin d’une aide informatique ?

Je propose une assistance informatique à distance pour vous aider à dépanner votre PC ou vos logiciels.
Service 100 % Lecoindunet.com

Une idée d’article ou un sujet à proposer ? 👉 Soumettre un article ou une idée

2 commentaires

  1. bonjour j’ai une table de cette forme :  DT timE————————————
    2012-04-05 06:31:44.5602012-04-05 06:31:44.3272012-04-05 06:23:03.4232012-04-05 06:15:37.6732012-04-05 05:37:53.4302012-04-05 05:30:08.5902012-04-05 05:25:52.823————————————je veux séparer la date et l’heur et mettre chacun dans une colonne SVP aidez moi  

    1. Bonjour,

      Tu devrais y arriver avec une requête comme celle-ci :

      INSERT INTO nouvelle_table (nom_col_date, nom_col_heure) SELECT TIME(nom_col_datetime), DATE(nom_col_datetime) FROM ancienne_table;

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *