Rumah >pangkalan data >tutorial mysql >Bagaimanakah Saya Boleh Menggunakan INSERT dengan SELECT untuk Memasukkan Lajur Tertentu dan Menetapkan Nilai Tersuai?
Memahami pertanyaan “INSERT WITH SELECT”
Pertanyaan "INSERT WITH SELECT" menggabungkan pernyataan INSERT dengan pernyataan SELECT untuk memasukkan berbilang baris ke dalam jadual pangkalan data berdasarkan data yang diambil daripada pernyataan SELECT.
Fleksibiliti pertanyaan “INSERT WITH SELECT”
Walaupun pernyataan INSERT biasanya membenarkan anda menentukan nilai untuk setiap lajur dalam jadual sasaran, pertanyaan "INSERT WITH SELECT" memberikan lebih fleksibiliti. Dalam pertanyaan ini, anda boleh menyertakan atau mengecualikan lajur secara selektif dalam pernyataan SELECT, membolehkan anda memasukkan data ke dalam lajur tertentu atau mengubah suai nilai semasa proses penyisipan.
Contoh: Masukkan hanya lajur yang dipilih dan tetapkan nilai tersuai untuk lajur
Pertimbangkan pertanyaan yang disediakan dalam soalan:
<code class="language-sql">INSERT INTO courses (name, location, gid) SELECT name, location, gid FROM courses WHERE cid = $cid</code>
Dalam pertanyaan ini, pernyataan SELECT mendapatkan semula nama, lokasi dan lajur gid daripada jadual kursus, tetapi hanya berhasrat untuk memasukkan nama dan lokasi ke dalam jadual kursus sasaran. Untuk mencapai matlamat ini, anda boleh mengubah suai pertanyaan seperti berikut:
<code class="language-sql">INSERT INTO courses (name, location, gid) SELECT name, location, 1 FROM courses WHERE cid = 2</code>
Dalam pertanyaan yang diubah suai, pernyataan SELECT kekal sama, tetapi kami menentukan nilai malar 1 untuk lajur gid dalam pernyataan INSERT. Ini membolehkan kami memasukkan nama dan lokasi ke dalam kursus sambil menetapkan gid kepada nilai tetap 1. Ambil perhatian bahawa anda boleh menggantikan 1 dengan mana-mana pemalar jenis yang sama seperti gid.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menggunakan INSERT dengan SELECT untuk Memasukkan Lajur Tertentu dan Menetapkan Nilai Tersuai?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!