【发布时间】:2021-10-17 03:37:07
【问题描述】:
我用谷歌搜索,但每个人都在询问如何传递表格或如何将返回结果用于函数;我都不想做。我只是想取一个表的列的值(假设下面的col2 是 text 数据类型),并将该数据传递给一个函数,这样我就可以操作数据,但是在 SELECT... 语句本身,即
SELECT t.col1, "myCustomFunction"(t.col2)
FROM tbl t
WHERE t.col1 = 'someCondition';
CREATE OR REPLACE FUNCTION myCustomFunction(myArg text)
RETURNS text AS $$
DECLARE
BEGIN
RETURN UPPER(myArg);
END
$$ LANGUAGE plpgsql;
...所以如果myCustomerFunction()的工作是大写字母(不是,只是一个例子),输出将是col2的表格数据全部大写。
这可能吗?我认为这与在其中嵌入 CASE 表达式没有什么不同,我知道它有效,并且函数返回结果,所以我认为它会是相同的,但是我收到 SQL 错误
【问题讨论】:
-
不可能。
-
@PavelStehule 太烂了,如果你回复答案,我会给你最好的答案
标签: postgresql plpgsql stored-functions