min

语法

min(X, [Y])

参数

X 可以是标量、向量、矩阵或表。

Y 为可选参数,可以是标量或者是和 X 长度相同的向量或者矩阵。

详情

对于只输入一个参数的情况,函数的返回值说明如下:

  • X 为向量,返回 X 中所有元素的最小值。

  • X 为矩阵,计算每列的最小值,返回一个向量。

  • X 为表,计算每列的最小值,返回一个表。

与所有其它聚合函数一致,计算时忽略 NULL 值。

对于输入两个参数的情况,函数返回值说明如下:

  • Y 是标量,则与 X 中所有元素进行比较,用较小值替换X中的元素并返回。

  • YX 类型长度一致,则将两者对应位置的元素进行比较,返回较小的结果。

请注意,从 2.00.8 版本开始,min 处理时间类型数据的行为(之前版本统一转换为长整型)修改为:

  • XY 是时间类型标量,系统会将时间类型统一为两者中较高精度对应的类型,再比较大小。

  • XY 是向量、矩阵或表,则必须具有相同的时间类型。

例子

$ min(1 2 3);
1;

$ min(2.0 1.1 0.1 NULL);
0.1

$ m=matrix(1 2 3, 4 5 6);
$ m;

#0

#1

1

4

2

5

3

6

$ min(m);
[1,4]
$ min(1 2 3, 2)
1 2 2

$ n = matrix(1 1 1, 5 5 5)
$ n;

#0

#1

1

5

1

5

1

5

$ min(m, n);

#0

#1

1

4

1

5

1

5

min 可以搭配select使用, 返回某列的最小值:

$ t = table(`abb`aac`aaa as sym, 1.8 2.3 3.7 as price);
$ select min price from t;

min_price

1.8

min 可以应用于字符串,返回字典序最小的字符串:

$ select min sym from t;

min_sym

aaa

相关函数:mmin