Memindahkan Data: Mengalihkan Baris dari Satu Jadual SQL ke Jadual yang Lain
Isu Awal:
Pengguna bertujuan untuk memindahkan data dari satu jadual SQL ke jadual lain berdasarkan kriteria padanan tertentu. Dalam kes khusus ini, pertanyaan memerlukan mengalihkan semua baris dari Jadual1 ke Jadual2 yang memenuhi syarat "nama pengguna = 'X'" dan "kata laluan = 'X'." Selepas itu, baris ini hendaklah dipadamkan daripada Jadual1.
Penyelesaian Teknikal:
Untuk melaksanakan pemindahan data ini dengan cekap, proses dua langkah boleh digunakan dalam satu SQL transaksi. Ini melibatkan sisipan awal dan pemadaman seterusnya:
BEGIN TRANSACTION; INSERT INTO Table2 (<columns>) SELECT <columns> FROM Table1 WHERE <condition>; DELETE FROM Table1 WHERE <condition>; COMMIT;
Pertimbangan Tambahan:
Untuk kes di mana rekod baharu yang sepadan dengan kriteria yang ditentukan mungkin ditambahkan pada Jadual1 antara proses penyisipan dan pemadaman, pertanyaan yang lebih terperinci boleh dibuat digunakan:
BEGIN TRANSACTION; INSERT INTO Table2 (<columns>) SELECT <columns> FROM Table1 WHERE <condition> AND NOT EXISTS (SELECT 1 FROM Table2 WHERE <condition>); DELETE FROM Table1 WHERE <condition>; COMMIT;
Tambahan ini memastikan bahawa hanya baris padanan asal daripada Jadual1 dipindahkan ke Jadual2 dan seterusnya dialih keluar daripada Jadual1.
Atas ialah kandungan terperinci Bagaimana untuk Memindahkan dan Memadam Baris SQL dengan Cekap Berdasarkan Kriteria Padanan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!