PostgreSQL:如何使用替换为动态替换文本
我正在尝试为PostgreSQL:如何使用替换为动态替换文本,sql,postgresql,Sql,Postgresql,我正在尝试为数据集表的每一行使用一个简单的模板字符串替换,生成字符串download\u url。应将每行的id替换为模板字符串 下面是我试过的。考虑到子查询中的id与外部查询相关联,我认为这会起作用: SELECT id, name, REPLACE('https://example.com/dataset/{id}/download/', '{id}', id) as download_url FROM dataset; 但我收到一个错误,指示不存在任何函数:
数据集
表的每一行使用一个简单的模板字符串替换
,生成字符串download\u url
。应将每行的id
替换为模板字符串
下面是我试过的。考虑到子查询中的id
与外部查询相关联,我认为这会起作用:
SELECT id,
name,
REPLACE('https://example.com/dataset/{id}/download/', '{id}', id)
as download_url
FROM dataset;
但我收到一个错误,指示不存在任何函数:
[42883]错误:函数替换(未知、未知、整数)不存在提示:没有与给定名称和参数类型匹配的函数。您可能需要添加显式类型转换
我应该正确地阅读错误消息和提示 解决方案是将
id
转换为如下字符串:
选择id,
名称
替换('https://example.com/dataset/{id}/download/','{id}',id::varchar)作为下载url
来自数据集;