You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在PostgreSQL中遍历表ID并调用带参数的自定义函数

PostgreSQL遍历ID调用函数的解决方案

你可以通过以下几种方式实现遍历mytable中的id并传入my_function:

方法1:隐式横向连接(内连接)

这种方式会返回所有函数调用有结果的行,语法简洁:

SELECT mf.*
FROM mytable t,
     my_function(t.id, 'myemail@gmail.com') mf;

方法2:显式横向连接(内连接)

如果需要更清晰的语法结构,推荐使用显式的CROSS JOIN LATERAL:

SELECT mf.*
FROM mytable t
CROSS JOIN LATERAL my_function(t.id, 'myemail@gmail.com') mf;

方法3:保留所有ID的左横向连接

如果希望保留mytable中的所有id,即使函数调用没有返回结果,可以使用LEFT JOIN LATERAL:

SELECT t.id, mf.*
FROM mytable t
LEFT JOIN LATERAL my_function(t.id, 'myemail@gmail.com') mf ON true;

说明:横向连接(LATERAL)允许在FROM子句中引用前面表的列,正好满足将每行的id作为参数传入函数的需求。

内容的提问来源于stack exchange,提问作者gwydion93

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 00:45:40