DB2 for Z/OS的SP的in子句中以逗号分隔的变量

DB2 for Z/OS的SP的in子句中以逗号分隔的变量,db2,Db2,我有一个SP,其中有一个in子句,如下所述 value1是Int,Variable1是varchar 假设SP启动了 Variable1=(value1,value2,value3)--从另一个表获取 从列1所在的表A中选择*(变量1) 上面的语句不起作用,需要解决此问题,请帮助下面是一个使用XML列表选择任意数量值的小示例: SELECT * FROM "tableA" WHERE "Column1" IN ( SELECT * FROM XMLTABLE('$X/set/row' PASSI

我有一个SP,其中有一个in子句,如下所述 value1是Int,Variable1是varchar 假设SP启动了 Variable1=(value1,value2,value3)--从另一个表获取

从列1所在的表A中选择*(变量1)


上面的语句不起作用,需要解决此问题,请帮助

下面是一个使用XML列表选择任意数量值的小示例:

SELECT * FROM "tableA"
WHERE "Column1" IN (
SELECT * FROM
XMLTABLE('$X/set/row' PASSING XMLPARSE('
<set>
<row item="1"/>
<row item="2"/>
<row item="3"/>
<!-- add as many "row" as you need here -->
</set>
')
AS "X"
COLUMNS 
"item" INT PATH '@item'
) AS X
)
您可能会在另一个技巧中找到一些帮助,即传递XML列表并使用
XMLTABLE
执行
JOIN
SELECT * FROM "tableA"
WHERE "Column1" IN (
  SELECT * FROM 
  XMLTABLE('$X/set/row' PASSING ? AS "X" COLUMNS "item" INT PATH '@item') AS X
)