PostgreSql 如何声明变量类型列表

Ant*_*osé 1 postgresql procedure

在 PostgreSql 过程中,我需要创建一个整数列表以在删除语句中使用,如示例所示:

DELETE FROM appointment_virtual WHERE appointment_id IN (list_delete);
Run Code Online (Sandbox Code Playgroud)

我需要帮助:

如何声明列表类型变量?
我找到了以下表格,但我不确定它是否符合 DELETE 语句的目的:

list_delete integer ARRAY;
Run Code Online (Sandbox Code Playgroud)

如何将项目添加到此列表变量?
我找到了以下方法:

list_delete = array_append (_delete, _appointment_id);
Run Code Online (Sandbox Code Playgroud)

如何将此列表变量的内容归零?
下面的语法正确吗?

list_delete = [];
Run Code Online (Sandbox Code Playgroud)

感谢任何帮助!

a_h*_*ame 8

定义一个数组变量追加[]到数据类型的末尾:

list_delete integer[];
Run Code Online (Sandbox Code Playgroud)

分配值使用

list_delete := array[1,2];
Run Code Online (Sandbox Code Playgroud)

将一个整数附加到数组中:

list_delete := list_delete||4;
Run Code Online (Sandbox Code Playgroud)

要分配空数组,请使用:

list_delete := CAST(array[] AS integer[]);
Run Code Online (Sandbox Code Playgroud)

或将其设置为空

list_delete := null;
Run Code Online (Sandbox Code Playgroud)