想要通过在Postgres函数中一次性传递多个参数来获取输出

问题描述

 dps.ds_parts_countertickets_open(locationid)

我们通过传递locationid作为参数来访问函数,例如:为了获取locationid = 1的输出,我们将编写

select * 
from dps.ds_parts_countertickets_open(1).

现在,我想同时/在一个输出中获取2个locationid的数据。例如:一次性获取locationid = 1和locationid = 2的输出。我该怎么做?

解决方法

一种实现方法是使用variadic function,它可以接受可变数量的参数。这些可以在函数体中的PostgreSQL数组中访问。

当然可以选择让函数接受数组作为参数。

使用适合您情况的任何方式。

,

使用横向连接:

select * 
from (values (1),(2)) v(id) cross join lateral
     dps.ds_parts_countertickets_open(v.id)

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...