【发布时间】:2021-11-10 13:28:21
【问题描述】:
有什么方法可以加入 Postgres 表和复合类型?
CREATE OR REPLACE FUNCTION public.function(
typename Type)
RETURNS table
LANGUAGE 'sql'
AS $BODY$ SELECT *
From public.table ta
Inner JOIN
typename t
ON
t.Id= ta.Id AND t.Name = ta.Name
它总是返回错误,我想这样做,因为我需要从 C# 项目发送 dataTable 并获取此 DataTable 中的所有项目
【问题讨论】:
-
基本上你想从一个表中进行选择,其中表值与复合类型中的某些字段匹配。可能吗?是的。但它是否真的是你需要做的才能让它与你的 C# 构造一起工作,我不知道。顺便说一句,该函数完全无效,如果您想为此使用 postgres 函数,我将首先阅读有关如何创建 postgres 函数的文档。
-
RETURNS "function"对我来说毫无意义。你到底想达到什么目的?如果要从函数返回结果,请使用returns table (...)或returns setof ...。 -
请注意,语言名称是一个标识符,不应用单引号括起来。此语法已弃用,未来版本将删除对它的支持
-
我已经修复它只是我需要知道我是否可以在表和类型之间进行任何连接作为函数中的参数存在
标签: sql postgresql join inner-join