繁体   English   中英

如何在PostgresSQL / plpgsql的SQL变量中使用多个值?

[英]How can I use multiple values in SQL variable in PostgresSQL/plpgsql?

我想将变量声明为v_nk varchar;

然后分配变量v_nk := ''S001234','S23401','S34509','S9900'';

并在选择查询中使用此变量

select * from mytable where nk in (v_nk);

我想在我的一个程序(plpgsql)中使用它,可以告诉我如何使用它吗?

您可以使用array:

v_nk := ARRAY [ 'S001234'::text ,'S23401','S34509','S9900'];

要么

v_nk := '{S001234,S23401,S34509,S9900}'::text[];

并在选择查询中使用此变量:

select * from mytable where nk = ANY (v_nk);

您可以定义数组而不是像这样的变量:

DECLARE nk_array    VARCHAR(30)[] = '{'S001234','S23401','S34509','S9900' }';
select * from mytable where nk in nk_array;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM