小编zer*_*dge的帖子

使用 array_position() 函数从 pg_stats 获取列最常见的值

我正在尝试执行这个简单的查询,以检查某个值(1000)是否属于 Postgres 查询优化器使用的 MCV 列表:

SELECT array_position(most_common_vals, 1000) 
FROM pg_stats 
WHERE tablename = 'tenk1' 
AND attname = 'unique1';
Run Code Online (Sandbox Code Playgroud)

但收到以下错误消息:

ERROR:  function array_position(anyarray, integer) does not exist
Run Code Online (Sandbox Code Playgroud)

如何解决?

array_position()是此处描述的标准函数,以下语句按预期返回2

SELECT array_position('{1,2,3}', 2);
Run Code Online (Sandbox Code Playgroud)

postgresql performance datatypes array postgresql-performance

4
推荐指数
1
解决办法
9412
查看次数