postgresql坑点

set integer null坑点

zipcode,num为integer类型 name为varchar字符串类型
使用''可以将值设置为(N/A)
UPDATE "public"."export_poi" SET "zipcode" = '' ,"num" = '' WHERE "source_id" = 80305002
如果同时设置字符串为null,会报错
UPDATE "public"."export_poi" SET "zipcode" = '' , name=null WHERE "source_id" = 80305002
以上,还是有情况会不能设置integer null

字符串拼接坑点:

使用|| 拼接字符串,如果字符串为null,和任何字符串||之后还为null
COALESCE函数,返回第一个不为null的值
update table1 set Child= COALESCE(CHILD || '|', '') || 'test'

导出CSV:

登录psql
su postgres
psql -W password -d database -u user
pg_dump
pg_dump
psql dump
psql \copy (select * from guangdong1) to ' /home/postgres/guangdong1.csv' with header;

你可能感兴趣的:(postgresql坑点)