Rumah >masalah biasa >Penggunaan sisipan ke dalam sintaks pilih

Penggunaan sisipan ke dalam sintaks pilih

DDD
DDDasal
2023-07-06 16:54:035690semak imbas

Dalam pangkalan data, pernyataan INSERT INTO SELECT digunakan untuk memasukkan hasil pertanyaan ke dalam jadual lain. Pernyataan INSERT INTO SELECT boleh menyalin kandungan satu jadual ke jadual lain dengan mudah atau mencipta jadual baharu berdasarkan hasil pertanyaan.

Penggunaan sisipan ke dalam sintaks pilih

Sintaks INSERT INTO SELECT adalah seperti berikut:

INSERT INTO table2 (column1, column2, column3, ...)
SELECT column1, column2, column3, ...
FROM table1
WHERE condition;

Pernyataan ini bermaksud memasukkan nilai lajur1, lajur2, lajur3 dan lajur baris lain yang memenuhi syarat tertentu dalam jadual1 ke dalam lajur yang sepadan dalam jadual2.

Berikut adalah contoh praktikal untuk menggambarkan penggunaan INSERT INTO SELECT.

Katakan kita mempunyai dua jadual: pelajar dan pelajar_baru. Jadual pelajar mengandungi lajur berikut: id, nama, umur, skor. Kami ingin memasukkan pelajar yang berumur 18 tahun ke atas dalam jadual pelajar ke dalam jadual pelajar_baru.

Mula-mula, kami mencipta jadual pelajar dan memasukkan beberapa data sampel:

CREATE TABLE students (
  id INT AUTO_INCREMENT PRIMARY KEY,
  name VARCHAR(50),
  age INT,
  score INT
);
INSERT INTO students (name, age, score)
VALUES ('John', 16, 90),
       ('Alice', 20, 95),
       ('Tom', 18, 85),
       ('Emily', 17, 88);

Seterusnya, kami mencipta jadual pelajar_baru:

CREATE TABLE new_students (
  id INT AUTO_INCREMENT PRIMARY KEY,
  name VARCHAR(50),
  age INT,
  score INT
);

Akhir sekali, kami menggunakan pernyataan INSERT INTO SELECT untuk memasukkan pelajar yang berumur 18 tahun ke atas dalam pelajar table into new_students Dalam jadual:

INSERT INTO new_students (name, age, score)
SELECT name, age, score
FROM students
WHERE age >= 18;

Dengan cara ini, jadual new_students mengandungi maklumat pelajar berumur 18 tahun ke atas dalam jadual pelajar.

Selain memasukkan terus hasil pertanyaan ke dalam jadual lain, pernyataan INSERT INTO SELECT juga boleh digunakan untuk mencipta jadual baharu yang mengandungi hanya hasil pertanyaan:

CREATE TABLE new_table AS
SELECT column1, column2, ...
FROM table
WHERE condition;

Dengan cara ini, new_table akan dibuat dan mengandungi hasil pertanyaan.

Ringkasan

Pernyataan INSERT INTO SELECT memilih baris tertentu dalam satu jadual (atau hasil pertanyaan) dan memasukkannya ke dalam jadual lain (atau mencipta jadual baharu). Fungsi ini sangat berkuasa dan boleh menyalin, menapis dan membuat jadual baharu dengan mudah.

Atas ialah kandungan terperinci Penggunaan sisipan ke dalam sintaks pilih. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn