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!