Postgresql 在另一个函数中调用一个函数,从主函数传递一个参数

Postgresql calling a function in another function passing an argument from the main function

我正在使用 Postgresql,我有一个函数可以检索所有以学校 ID 作为参数的教师(姓名、年龄和学科列)

当前查询如下所示

select id, (select * from getallteachers(schools.id)) 
from schools

这给我一个错误,说子查询不能 return 多个值,然后我试了这个

select id, getallteachers(schools.id)
from schools

这 return 所有列(姓名、年龄等...)合并为一列作为记录

我要得到的结果集是

schoolid | teachers name | teachers age | teachers subject  

使用横向连接:

select s.id, g.*
from schools s cross join lateral
     getallteachers(s.id) g