小编Ara*_*yan的帖子

Postgresencode() 函数不适用于函数作为参数

我正在尝试使用 Postgresqlencode() 函数并将一些其他函数作为参数。我收到错误,但我不明白为什么。

我在 Windows 上使用 Postgres 9.6.14。

  1. 这工作正常并返回698d51a19d8a121ce581499d7b701668
select md5('111'); 
Run Code Online (Sandbox Code Playgroud)
  1. 这也可以正常工作并返回一些值
select encode('698d51a19d8a121ce581499d7b701668', 'base64');
Run Code Online (Sandbox Code Playgroud)
  1. 但是这个结合了前两个的,不起作用并返回"ERROR: function encode(text, unknown) does not exist"
select encode(md5('111'), 'base64');
Run Code Online (Sandbox Code Playgroud)
  1. 这也不起作用并返回相同的错误
select encode(concat('1', '11'), 'base64');
Run Code Online (Sandbox Code Playgroud)
  1. 我认为有一条规则可以防止在另一个函数中使用一个函数,但下面的规则可以正常工作,并且返回与此处第一个请求相同的值,如预期的那样。
select md5(concat('1', '11'))
Run Code Online (Sandbox Code Playgroud)

那么请求 3 和 4 以及整体功能有什么问题呢encode()

postgresql postgres-9.6

6
推荐指数
1
解决办法
3555
查看次数

标签 统计

postgres-9.6 ×1

postgresql ×1