📜  从 esql 数组中选择值 (1)

📅  最后修改于: 2023-12-03 14:49:17.295000             🧑  作者: Mango

从 ESQL 数组中选择值

ESQL 是 IBM Integration Bus(IIB)中的一种编程语言,用于处理数据和消息。在 ESQL 中,数组提供了一种方便的方式来组织和管理数据。

有时候,我们可能需要从数组中选择一个或多个值。本篇文章将介绍如何从 ESQL 数组中选择值。

访问数组元素

在 ESQL 中,我们可以使用下标访问数组元素。例如,以下代码创建了一个整数数组,并将其第一个元素设置为 10:

DECLARE myArray INTEGER ARRAY;
SET myArray[1] = 10;

要访问数组中的元素,只需指定其下标即可。例如,以下代码将数组的第一个元素设置为 20:

SET myArray[1] = 20;
遍历数组

如果要访问数组中的所有元素,可以使用 FOR 循环。例如,以下代码将遍历一个包含 5 个整数的数组,并输出它们的值:

DECLARE myArray INTEGER ARRAY;
SET myArray = 1 : 2 : 3 : 4 : 5;

DECLARE i INTEGER;
FOR i = 1 TO CARDINALITY(myArray) DO
    SET OutputRoot.Properties.Message = CAST(myArray[i] AS CHARACTER);
    CALL SendOutputRoot;
END FOR;
选择数组元素

要从数组中选择元素,可以使用 WHERE 子句。WHERE 子句可以使用各种条件运算符和逻辑运算符来指定条件。例如,以下代码将选择数组中所有大于 3 的元素:

DECLARE myArray INTEGER ARRAY;
SET myArray = 1 : 2 : 3 : 4 : 5;

DECLARE resultArray INTEGER ARRAY;
SET resultArray = myArray[WHERE myArray > 3];

DECLARE i INTEGER;
FOR i = 1 TO CARDINALITY(resultArray) DO
    SET OutputRoot.Properties.Message = CAST(resultArray[i] AS CHARACTER);
    CALL SendOutputRoot;
END FOR;

在上面的代码中,WHERE 子句选择了大于 3 的元素,并将它们存储在一个名为 resultArray 的新数组中。然后,代码遍历 resultArray 数组,并将每个元素输出到控制台。

总结

在 ESQL 中,数组提供了一种方便的方式来组织和管理数据。要访问数组元素,只需使用下标即可。要遍历数组,可以使用 FOR 循环。要选择数组元素,可以使用 WHERE 子句。