【发布时间】:2016-11-16 21:59:54
【问题描述】:
我有如下表定义:
create table null_test (some_array character varying[]);
以及以下包含数据的 SQL 文件。
copy null_test from stdin;
{A,\N,B}
\.
当取消嵌套数据(使用select unnest(some_array) from null_test)时,第二个值是“N”,而我期望为 NULL。
我尝试将数据更改为如下所示(在数组值上使用内部引号):
copy null_test from stdin;
{"A",\N,"B"}
\.
插入了相同的非空值“N”?
为什么这不起作用?有解决方法吗?
编辑
根据接受的答案,以下工作有效。但是,根据您使用的是单个值还是数组值,COPY 命令中 NULL 值的两种表示是不一致的。
copy null_test from stdin;
{"A",NULL,"B"}
\.
【问题讨论】:
标签: sql arrays postgresql null