【问题标题】:How to skip first several lines when importing CSV from Postgresql?从 Postgresql 导入 CSV 时如何跳过前几行?
【发布时间】:2016-04-18 22:51:13
【问题描述】:

我试图将 CSV 文件导入到我的 Postgresql 中,跳过了前 8 行并从第 9 行开始。我下面的代码可以从第二行读取并将第一行视为标题:

    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

【问题讨论】:

    标签: postgresql csv import skip


    【解决方案1】:

    对于 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

    【讨论】:

    猜你喜欢
    • 2013-04-08
    • 1970-01-01
    • 1970-01-01
    • 2021-10-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多