Maison >base de données >tutoriel mysql >Comment insérer des lignes avec des valeurs personnalisées à l'aide de INSERT WITH SELECT ?

Comment insérer des lignes avec des valeurs personnalisées à l'aide de INSERT WITH SELECT ?

Linda Hamilton
Linda Hamiltonoriginal
2025-01-18 19:53:11695parcourir

How to Insert Rows with Custom Values Using INSERT WITH SELECT?

Utilisez l'instruction SELECT pour insérer des lignes et des colonnes avec des valeurs personnalisées

L'instruction

INSERT WITH SELECT permet de personnaliser les valeurs insérées dans la table cible en manipulant la partie SELECT de la requête. Cela vous permet de sélectionner des colonnes spécifiques à insérer et de définir des valeurs explicites pour les autres colonnes.

Votre requête souhaite insérer uniquement les colonnes name et location de la table source dans la table cible courses, tout en définissant la colonne gid sur une valeur personnalisée. Pour y parvenir, suivez ces étapes :

  1. Sélectionnez la colonne souhaitée :

    • Modifiez la clause SELECT pour inclure uniquement les colonnes obligatoires :
    <code class="language-sql">SELECT name, location</code>
  2. Définir une valeur personnalisée pour gid :

    • Ajoutez une colonne supplémentaire à la clause SELECT et attribuez la valeur souhaitée à gid. Par exemple, si vous souhaitez définir gid sur 1 :
    <code class="language-sql">SELECT name, location, 1 AS gid</code>
  3. Requête complète :

    • Assurez-vous que les colonnes de la table cible et SELECT correspondent correctement :
    <code class="language-sql">INSERT INTO courses (name, location, gid)
    SELECT name, location, 1 AS gid
    FROM courses
    WHERE cid = $cid</code>

En suivant ces étapes, vous pouvez utiliser l'instruction INSERT WITH SELECT pour insérer les colonnes sélectionnées dans la table cible tout en définissant une autre colonne sur une valeur personnalisée spécifiée.

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