#mysql #sql #load-data-infile
#mysql #sql #загрузка-data-infile
Вопрос:
Каков правильный синтаксис для импорта части файла в базу данных MySQL? Например, я хочу загружать только строки с 50 по строку 1000.
В настоящее время мой оператор SQL импортирует весь файл в базу данных.
LOAD DATA INFILE 'myFile.txt' INTO TABLE myTable (col1, col2) FIELDS TERMINATED BY 't' LINES TERMINATED BY 'n'
Я хочу быть более избирательным. Есть предложения? Спасибо
Ответ №1:
LOAD DATA INFILE
позволяет пропускать строки только в начале файла (например, IGNORE 49 LINES
), но при этом будут импортированы все строки до конца файла. Подробности см. в LOAD DATA INFILE
Синтаксисе.
Ответ №2:
head -c 1000 myFile.txt | tail -n 950
даст 50-1000 строк. Я бы рекомендовал отделить этап предварительной обработки от загрузки данных