0
我有以下表定义:为什么PostgreSQL COPY命令不允许数组内的NULL值?
create table null_test (some_array character varying[]);
和包含的数据下面的SQL文件。
copy null_test from stdin;
{A,\N,B}
\.
当unnesting的数据(与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"}
\.