Netezza 中可以传递 IN 子句的最大参数
Posted
技术标签:
【中文标题】Netezza 中可以传递 IN 子句的最大参数【英文标题】:Max parameter that can pass IN clause in Netezza 【发布时间】:2019-07-03 13:14:46 【问题描述】:在 Netezza 中,可以指定一个 IN 子句,如下所示:(就像 sql)
SELECT * FROM user WHERE id IN (1000, 1001, 1002)
有谁知道您可以传递给 IN 的最大参数数是多少?
我知道 Oracle 允许在 SQL 语句中最多包含 1,000 个 IN 列表值。
【问题讨论】:
【参考方案1】:限制是 Netezza 允许的 SQL 语句的最大物理长度。
如果 IN 成员的数量超过 INLIST_THRESHOLD 设置指定的阈值,系统会将列表写入磁盘以供查询使用。如果成员数量等于或低于阈值,则列表中的值将被编译到查询中并推送到 FGA 进行磁盘级过滤(更快)。您可以控制阈值设置 forum discussion
【讨论】:
以上是关于Netezza 中可以传递 IN 子句的最大参数的主要内容,如果未能解决你的问题,请参考以下文章
如何将 select 语句的 IN 子句中的参数作为具有多个值的参数传递?