2013-08-19 3 views
1

MYSQL 테이블로 가져올 35 개의 CSV 파일이 있습니다 ('test'). 'test'테이블에 하나의 열을 만들고 싶습니다 ('file_name'). 이 열에는 데이터를 가져온 CSV의 이름이 포함됩니다. 파일 이름은 고유 한 ID입니다. 따라서 테이블에 입력 된 파일 이름을 가져 오려고합니다.하나의 열을 CSV 파일의 이름으로 사용하여 MySql 테이블로 CSV 파일 가져 오기

X1.csv, X2.CSV, X3.csv .... X35.csv와 같은 CSV 파일이 있다고 가정합니다. I는 "테스트"테이블과 같이 보인다되도록 'FILE_NAME'에 '검사'테이블의 열 원한다


COL1을 -> A, B, C, D

COL2 -> X, Y , Z

... ...

... ...

FILE_NAME, w -> X1, X1, X2, X3


참고 : 포럼에서이 질문을 검색하려고했지만 적절한 해결책을 찾을 수 없습니다. 또한 MYSQL에 익숙하지 않습니다. 사소한 일이라 할지라도 도와주세요.

답변

0

나는 이것이 확실하지 않다 당신이 찾고있는,하지만 첫눈에, 당신은 LOAD DATA INFILE 문 조사해야 정확히 :

LOAD DATA INFILE 'X1.csv' INTO TABLE tbl_name -- Load the content of the CSV file 
    FIELDS TERMINATED BY ',' ENCLOSED BY '"' -- assuming fields separate by ",", enclosed by "'" 
    LINES TERMINATED BY '\r\n'     -- assuming end-of-line being '\r\n' 
    IGNORE 1 LINES        -- assuming first line is a header and should be ignored 
    SET file_name = 'X1';      -- force the column `file_name` to be the name of the file 

는 문을 유의하시기 바랍니다, 각 필드를 표의 자체 에 들어갑니다. 그리고 CSV 데이터 파일의 각 행은 한 행에로드됩니다. 이것은 동일한 파일 이름을 가진 결과 테이블에 여러 행이 있음을의 L합니다. 사실 데이터 라인 당 하나의 행.