Saya bertanya-tanya apakah ada cara untuk melakukan ini di sql:
q1 = SELECT campaign_id, from_number, received_msg, date_received
FROM `received_txts` WHERE `campaign_id` = '8';
INSERT INTO action_2_members (campaign_id, mobile, vote, vote_date)
VALUES(q1.campaign_id, q1.from_number, q1.received_msg, q1.date_received);
Catatan: q1 akan mengembalikan sekitar 30rb baris.
Apakah ada cara untuk melakukan apa yang saya coba di atas dalam sql langsung? Untuk hanya menarik data langsung dari satu tabel (pada dasarnya tabel data mentah) dan menyisipkan ke tabel lain (pada dasarnya tabel data yang diproses)?
INSERT INTO ... SELECT
pernyataan ini ?INSERT
untuk seluruh baris
untuk kolom yang dipilih
sumber
Dijawab oleh zerkms adalah metode yang benar. Tapi, jika seseorang ingin memasukkan lebih banyak kolom di tabel maka Anda bisa mendapatkannya dari yang berikut:
Dalam kueri di atas, ada 2 kolom tambahan bernama email & current_time .
sumber
sumber
Analisis
Kita dapat menggunakan kueri di atas jika kita ingin menyalin data dari satu tabel ke tabel lain di mysql
Hasil eksekusi
1 kueri dieksekusi, 1 berhasil, 0 kesalahan, 0 peringatan
Kueri: masukkan ke preliminary_image (style_id, pre_image_status, file_extension, reviewer_id, uploader_id, is_deleted, last_updated) pilih ...
5 baris terpengaruh
Waktu Eksekusi: 0,385 detik Waktu Transfer: 0 detik Total Waktu: 0,386 detik
sumber