2016-04-18 131 views
-1

我試圖導入一個CSV文件到我的Postgresql,第一行8行被跳過並從第九行開始。我下面的作品碼,從第二行讀取和處理第一行標題:如何在從Postgresql導入CSV時跳過前幾行?

create table report(
      id integer, 
      name character(3), 
      orders integer, 
      shipments float 

      ); 

COPY report 
FROM 'C:\Users\sample.csv' DELIMITER ',' CSV HEADER; 

現在如何改進這個代碼從9號線閱讀。 謝謝!

CSV details

回答

0

在PostgreSQL 9.3或更新的版本,COPY可以指程序對數據進行預處理,例如Unix的tail

要在第9行開始導入:

COPY report FROM PROGRAM 'tail -n +9 /path/to/file.csv' delimiter ',' csv; 

顯然,你正在使用Windows,所以tail可能不會立即可用。我個人會從MSYS安裝它,否則有
Looking for a windows equivalent of the unix tail command
Windows equivalent of the 'tail' command中提到的替代方案。

+0

不需要msys或類似的東西。命令行程序可以作爲本地windows二進制文件下載:http://unxutils.sourceforge.net/或http://gnuwin32.sourceforge.net/ –