SQL / DB2数组在Where中声明为

vcudknz3  于 2022-11-07  发布在  DB2
关注(0)|答案(2)|浏览(142)

有没有人知道一个解决方法,可以在db2 v11上的函数中使用where [...]中的参数/变量进行查询?
我尝试的是:
第一个
两个都不起作用,第一个不兼容db2,第二个不起作用,因为他不能拆分值。
有什么想法或例子吗?

mctunoxg

mctunoxg1#

试试看:

SELECT t.*
FROM tbl t
WHERE EXISTS
(
  select 1
  from xmltable
  (
  'for $id in tokenize($s, ",") return <i>{string($id)}</i>' 
  passing '1,2,3,4' as "s"
  columns 
    tok int path '.'
  ) v
  where v.tok = t.col
);

如果您希望在运行时以逗号分隔的字符串形式提供此类整数列表,则可以使用参数标记,而不是字符串常量1,2,3,4(与通常的字符串参数一样)。

mv1qrgav

mv1qrgav2#

声明本地临时表并在其中插入值列表?

相关问题