postgresql之copy

一,概念
copy在数据库表和文件之间交换数据
copy to 把一个表的所有内容都拷贝到一个文件(把数据追加到表中原有数据)
copy from 从一个文件里拷贝数据到一个表里
copy 导入导出数据十分快速!!!
二,用法
可以copy一整张表,可以copy一个表里的指定字段,也可以copy一个select结果
导出
copy 表名或者表名(列名)或者(select查询) to 一个绝对路径地址 with 格式;
导入
copy 表名或者表名(列名)from 一个绝对路径地址 with 格式;
举例:
copy user to ‘/tmp/data/test.csv’ with csv;
copy user(name,password) to ‘/tmp/data/test.csv’ with csv;
copy (select * from user) to ‘/tmp/data/test.csv’ with csv;
copy user from ‘/tmp/data/test.csv’ with csv;
copy user(name,password) from ‘/tmp/data/test.csv’ with csv;
注意:1 导入导出命令相似,只是把to改成了from
2 必须是在psql执行,也必须是postgres用户才可以
普通用户要用\copy
3 如果导出时有int[]型,最好做如下处理
\copy (select coalesce(integer_array,‘{}’)::integer[] as integer_array from table to ‘/tmp/data/test.csv’ with csv;
4 from的时候数据库中必须已经存在这张表
三 实际应用
导出成csv带表头

copy test to '/home/postgres/test.csv' With CSV DELIMITER ',' HEADER;

注:本文仅供自己学习,如有侵权,请私信
https://www.jb51.net/article/204298.htm
https://blog.csdn.net/wtopps/article/details/79097748

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值