如何将多维数组中的特定数据存储到变量中
How to store specific data from a multi-dimensional array into a variable
我有一个像这样的多维数组:
coeficiente VARCHAR[2][2];
我在这个数组中存储的是这样的信息:
{{"uwu","2"},{"owo","5"}}
我还有另外两个变量:
variable1 VARCHAR;
variable2 VARCHAR;
我想从这个多维数组内容示例中将“2”保存到 variable1,将“5”保存到 variable2。
我该怎么做?
我在想可能是一个 for 循环,但我仍然不知道如何在 plpgsql 中的 ARRAY[][] 结构中迭代。
我在互联网上可以找到的最接近的例子是:
。但是他们存储一个多维数组中的数组。我只需要获取其中的变量即可。
Postgres documentation。但它没有解释如何进入一个特定的“插槽”。
您可以使用两个 for 循环遍历二维数组,也称为 嵌套循环。
与循环 n 维数组类似,您需要 n 个循环相互嵌套。
也许我遗漏了什么,但是:
variable1 := coeficiente[1][2];
variable2 := coeficiente[2][2];
会为所欲为。
do
$$
declare
coeficiente VARCHAR[2][2] := '{{"uwu","2"},{"owo","5"}}';
variable1 VARCHAR;
variable2 VARCHAR;
begin
variable1 := coeficiente[1][2];
variable2 := coeficiente[2][2];
raise notice 'var1=%', variable1;
raise notice 'var2=%', variable2;
end;
$$
将输出:
var1=2
var2=5
我有一个像这样的多维数组:
coeficiente VARCHAR[2][2];
我在这个数组中存储的是这样的信息:
{{"uwu","2"},{"owo","5"}}
我还有另外两个变量:
variable1 VARCHAR;
variable2 VARCHAR;
我想从这个多维数组内容示例中将“2”保存到 variable1,将“5”保存到 variable2。
我该怎么做?
我在想可能是一个 for 循环,但我仍然不知道如何在 plpgsql 中的 ARRAY[][] 结构中迭代。
我在互联网上可以找到的最接近的例子是:
Postgres documentation。但它没有解释如何进入一个特定的“插槽”。
您可以使用两个 for 循环遍历二维数组,也称为 嵌套循环。 与循环 n 维数组类似,您需要 n 个循环相互嵌套。
也许我遗漏了什么,但是:
variable1 := coeficiente[1][2];
variable2 := coeficiente[2][2];
会为所欲为。
do
$$
declare
coeficiente VARCHAR[2][2] := '{{"uwu","2"},{"owo","5"}}';
variable1 VARCHAR;
variable2 VARCHAR;
begin
variable1 := coeficiente[1][2];
variable2 := coeficiente[2][2];
raise notice 'var1=%', variable1;
raise notice 'var2=%', variable2;
end;
$$
将输出:
var1=2
var2=5