Maison >base de données >tutoriel mysql >Comment insérer des données avec une sélection sélective de colonnes dans l'instruction INSERT INTO ... SELECT de SQL ?

Comment insérer des données avec une sélection sélective de colonnes dans l'instruction INSERT INTO ... SELECT de SQL ?

DDD
DDDoriginal
2025-01-18 20:15:10959parcourir

How to Insert Data with Selective Column Selection in SQL's INSERT INTO ... SELECT Statement?

INSERT INTO ... SELECT de SQL : insertion de données ciblées

La puissante instruction INSERT INTO ... SELECT de SQL vous permet de remplir une table avec les données des résultats d'une requête. Ceci est idéal pour copier ou transférer efficacement des données entre des tables.

Examinons une requête typique :

<code class="language-sql">INSERT INTO courses (name, location, gid) 
SELECT name, location, gid 
FROM courses 
WHERE cid = $cid</code>

Cela copie des lignes entières. Cependant, vous devez souvent insérer uniquement des colonnes spécifiques ou attribuer des valeurs personnalisées à certains champs.

Insertion sélective de colonnes et valeurs constantes

Pour insérer les colonnes choisies et définir une colonne comme 'gid' sur une valeur fixe, ajustez la requête comme ceci :

<code class="language-sql">INSERT INTO courses (name, location, gid)
SELECT name, location, 1
FROM   courses
WHERE  cid = $cid</code>

Ici, 'gid' se voit attribuer la constante '1'. N'oubliez pas d'utiliser une constante compatible avec le type de données de la colonne 'gid'.

Important : Le nombre de colonnes dans l'instruction SELECT doit correspondre au nombre de colonnes répertoriées dans l'instruction INSERT.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn