Rumah  >  Artikel  >  pangkalan data  >  Bagaimanakah saya boleh Melangkau Lajur Apabila Mengimport fail CSV ke MySQL menggunakan LOAD DATA INFILE?

Bagaimanakah saya boleh Melangkau Lajur Apabila Mengimport fail CSV ke MySQL menggunakan LOAD DATA INFILE?

DDD
DDDasal
2024-11-17 18:21:02104semak imbas

How can I Skip Columns When Importing a CSV file into MySQL using LOAD DATA INFILE?

Melangkau Lajur dalam Import CSV dengan INFILE DATA LOAD MySQL

Apabila mengimport data daripada fail CSV ke dalam jadual MySQL, anda tidak semestinya perlu memetakan semua lajur. Kadangkala adalah wajar untuk melangkau lajur yang tidak berkaitan atau mengelakkan pemetaan lajur yang wujudnya ketidakpadanan data.

Masalah:

Pertimbangkan fail CSV dengan 11 lajur:

col1, col2, col3, col4, col5, col6, col7, col8, col9, col10, col11

Dan jadual MySQL dengan hanya 9 lajur:

col1, col2, col3, col4, col5, col6, col7, col8, col9

Matlamatnya adalah untuk mengimport lajur 1 hingga 8 daripada CSV ke dalam 8 lajur pertama jadual MySQL, tetapi langkau lajur 9 dan 10 dan kemudian petakan lajur 11 CSV ke lajur 9 daripada jadual.

Penyelesaian:

Untuk melangkau lajur dalam CSV semasa import, gunakan pembolehubah @dummy dalam perintah LOAD DATA INFILE:

LOAD DATA LOCAL INFILE 'filename.csv' INTO TABLE my_table (
    col1,
    @dummy1,
    col2,
    @dummy2,
    col3,
    col4,
    col5,
    col6,
    col7,
    col8,
    @dummy3,
    @dummy4,
    col9
)
FIELDS TERMINATED BY ','
ENCLOSED BY ''
LINES TERMINATED BY '\n'

Dalam arahan ini:

  • @dummy1, @dummy2, @dummy3 dan @dummy4 ialah pembolehubah pengguna yang akan memegang nilai lajur yang dilangkau.
  • Lajur 9 dan 10 daripada fail CSV akan diberikan kepada @dummy3 dan @dummy4, masing-masing, supaya fail CSV akan dibuang dengan berkesan.

Penyelesaian ini membenarkan pemetaan terpilih lajur CSV kepada lajur jadual, walaupun apabila ia berbeza dalam bilangan.

Atas ialah kandungan terperinci Bagaimanakah saya boleh Melangkau Lajur Apabila Mengimport fail CSV ke MySQL menggunakan LOAD DATA INFILE?. 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