Rumah >pangkalan data >tutorial mysql >Bagaimanakah Saya Boleh Melangkau Lajur Semasa Import CSV ke dalam Jadual MySQL?

Bagaimanakah Saya Boleh Melangkau Lajur Semasa Import CSV ke dalam Jadual MySQL?

Barbara Streisand
Barbara Streisandasal
2024-11-16 08:25:03680semak imbas

How Can I Skip Columns During a CSV Import into a MySQL Table?

Melangkau Lajur Semasa CSV Import ke dalam Jadual MySQL

Mengimport data daripada fail CSV ke dalam jadual MySQL ialah tugas biasa. Walau bagaimanapun, kadangkala anda mungkin menghadapi situasi di mana anda perlu melangkau lajur tertentu. Artikel ini menyediakan penyelesaian untuk melangkau lajur yang tidak diingini dan memetakan data yang tinggal dengan betul.

Senario

Pertimbangkan fail CSV dengan 11 lajur dan jadual MySQL dengan 9 lajur . Matlamatnya adalah untuk memetakan lajur 1-8 daripada fail CSV terus ke 8 lajur pertama jadual MySQL. Lajur 9 dan 10 dalam fail CSV perlu dilangkau, dan Lajur 11 harus dipetakan ke Lajur 9 dalam jadual MySQL.

Perintah Asal

SQL awal arahan yang digunakan, yang ditunjukkan di bawah, hanya memetakan 9 lajur pertama fail CSV kepada 9 lajur dalam jadual MySQL.

LOAD DATA LOCAL INFILE 'filename.csv' INTO TABLE my_table
FIELDS TERMINATED BY ','
ENCLOSED BY ''
LINES TERMINATED BY '\n'

Penyelesaian

Kepada langkau lajur semasa import, anda boleh menggunakan teknik yang diterangkan dalam dokumentasi MySQL. Dengan memperuntukkan lajur yang tidak diingini kepada pembolehubah pengguna dalam penyata LOAD DATA, anda boleh membuangnya dengan berkesan. Perintah yang diubah suai di bawah menunjukkan teknik ini:

LOAD DATA LOCAL INFILE 'filename.csv' INTO TABLE my_table
FIELDS TERMINATED BY ','
ENCLOSED BY ''
LINES TERMINATED BY '\n'
(column1, @dummy, column2, @dummy, column3, column4, column5, column6, column7, column8, @dummy, @dummy, column11)

Dalam perintah yang dipertingkatkan ini, lajur yang tidak diingini (9 dan 10) diberikan kepada pembolehubah pengguna @dummy dan dibuang semasa proses import. Akibatnya, lajur yang tinggal dipetakan dengan betul seperti yang dikehendaki: lajur 1-8 daripada fail CSV dipetakan ke 8 lajur pertama jadual MySQL, manakala lajur 11 dipetakan ke lajur 9 jadual MySQL.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Melangkau Lajur Semasa Import CSV ke dalam Jadual MySQL?. 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