在netezza中使用nzload时如何定义多个空值?

时间:2015-07-20 19:15:46

标签: sql database odbc netezza

我正在尝试将数据插入到netezza框中。我有一个管道分隔文件,其中我想要'none'的多种变体(即'None','NONE','none')被视为NULL。虽然'-nullvalue'选项一次只能用于一个变体,但它不允许我将多个变体设置为NULL。

此外,cf中的nullvalue选项的多个定义也无济于事

1 个答案:

答案 0 :(得分:1)

从版本7.2开始, nzload 不允许-nullvalue选项的多个值。但是, 指定的4个字符值不区分大小写,这允许您的特定样本情况-nullvalue为'None'以匹配'NONE','无','NoNe'等。

TESTDB.ADMIN(ADMIN)=> create table null_test (col1 int, col2 int, col3 int);
CREATE TABLE

$ cat test.txt
1|NONE|1
2|None|2
3|NoNe|3


$ nzload -db testdb -df test.txt -t null_test -delim \| -nullvalue 'None'
Load session of table 'NULL_TEST' completed successfully

TESTDB.ADMIN(ADMIN)=> select * from null_test where col2 is null;
 COL1 | COL2 | COL3
------+------+------
    1 |      |    1
    2 |      |    2
    3 |      |    3
(3 rows)