向量/集合/元组中的 NULL 值

含有NULL值的向量:

x=1 2 NULL NULL 3;
y=2 NULL NULL 3 4;
x+y;
// output
[3,,,,7]

x*y;
// output
[2,,,,12]

x**y;
// output
14
// 内积

sum x;
// output
6

x<y;
// output
[1,0,0,1,1]

x||1;
// output
[1,1,,,1]

// 除了<, <=这些关系运算符之外,任何在NULL值上的二元操作将会得到NULL值。

含有NULL值的集合:

a=set(1 NULL)
b=set(2 NULL);
x=a&b;
x;
// output
set(00i)

// x和y的公共元素是NULL
NULL in x;
// output
1
size(x);
// output
1

// 集合x不为空,因为有一个NULL值。
c=set(2 3);
y=a&c;
y;
// output
set()

size(y);
// output
0

// 测试一个集合是否为空的唯一方式是size(y)==0

含有NULL值的元组:

x=(1, NULL);
x+1;
// output
(2,)