MySQL中可以使用LOAD DATA INFILE語句來讀取文件并插入到表中,相關函數為LOAD DATA和SELECT
示例代碼: LOAD DATA INFILE 'data.csv' INTO TABLE mytable FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n' IGNORE 1 ROWS;
上面的代碼中,'data.csv'表示待讀取的文件名,mytable表示要插入的目標表名。FIELDS TERMINATED BY ','表示使用逗號進行字段分隔,LINES TERMINATED BY '\n'則表示使用換行符進行行分隔。同時,IGNORE 1 ROWS表示忽略第一行,即表頭。
當然,除了LOAD DATA語法,也可以使用SELECT語法讀取文件中的數據,這種方式比較靈活,可以在讀取時進行一些數據轉換或過濾操作。示例代碼如下:
SELECT * FROM (SELECT @rownum:=@rownum+1 AS rownum, col1, col2 FROM (SELECT @rownum:=0) r, (SELECT col1, col2 FROM mytable ORDER BY col1) t) t2 WHERE rownum >= 100 AND rownum<= 200;
上面代碼中,使用子查詢和變量@rownum來給每一行進行編號,并進行了行數的過濾。需要注意的是,讀取文件的路徑也需要在代碼中進行指定。