---
source_url: https://docs.dolphindb.cn/zh/funcs/ho_funcs/all.html
fetched_at: 2026-05-19T09:44:46Z
category: funcs
title: all
sha1: 82f4ac79a65aa9663a0938fb41b71e20a0c66382
---

# all

## 语法

`all(func, args...)`

## 详情

把函数应用到参数的每一个元素。只要函数调用返回false，*all*
高阶函数就会停止执行，并返回false。如果所有的函数调用都返回true，*all* 高阶函数将返回true。

如果args是一个矩阵，*all* 高阶函数将会按列执行；如果args是一个表格，它将会按行执行。

## 参数

- **func** 是一个函数名。
- **args**
  是函数func的参数。它们可以是向量、矩阵或表。它们的数据形式可以不尽相同，但是长度必须相同，即向量中元素的个数，或矩阵中列的数量，或表中行的数量需要相同。

## 返回值

一个布尔值标量。

## 例子

*all* 高阶函数用于向量。

```dolphindb
x = 1 2 NULL 11 NULL 13 NULL 102 103;
y = x cut 3;
y;
// output
([1,2,],[11,,13],[,102,103])

all(hasNull, y);
// output
1
// 检查是否 [1,2,],[11,,13],[,102,103]都含有 NULL值

x = 1 25 7 15 11 197 16 18 23;
y = x cut 3;
y;
// output
([1,25,7],[15,11,197],[16,18,23])

all(in, 7 11 23, y);
// output
1
// 检查是否 7在[1, 25, 7] 中, 11在[15,11,197] 中以及 23在[16,18,23]中。

all(in, 7 8 23, y);
// output
0
// 由于8不在[15, 11, 197]中，返回false

all(lt, 1 2 3, 4 5 6);
// output
1
// 检查是否 1<4, 2<5 以及3<6

all(lt, 1 2 7, 4 5 6);
// output
0
//返回false，因为7>6
```

*all* 高阶函数作用在矩阵上，按列遍历。

```dolphindb
x=1..6$2:3;
x;
```

| #0 | #1 | #2 |
| --- | --- | --- |
| 1 | 3 | 5 |
| 2 | 4 | 6 |

```dolphindb
all(in, 1 4 5, x);
// output
1

all(in, 1 2 5, x);
// output
0
// 返回 false，因为2不在x的第二列中
```

*all* 高阶函数作用在表上，按行遍历。下例中，定义了一个名为 *varscompare*
的函数用于比较表中的两个变量。

```dolphindb
x=table(1 2 3 as a, 4 5 6 as b);
x;
```

| a | b |
| --- | --- |
| 1 | 4 |
| 2 | 5 |
| 3 | 6 |

```dolphindb
def varscompare(t):t.a<t.b;
all(varscompare, x);
// output
1

y=table(1 7 3 as a, 4 5 6 as b);
// output
y;
```

| a | b |
| --- | --- |
| 1 | 4 |
| 7 | 5 |
| 3 | 6 |

```dolphindb
all(varscompare, y);
// output
0
// 返回 false，因为7>5
```
