【问题标题】:PostgreSQL bytea to Base64 like SQL ServerPostgreSQL bytea 到 Base64 像 SQL Server
【发布时间】:2019-01-15 20:27:52
【问题描述】:

在 SQL Server 中,我像这样将二进制转换为 Base64

SELECT HASHBYTES('MD5', 'Test') FOR XML PATH(''), TYPE

并得到结果“DLxmEfVUC9CAmjiNyVphWw==”。

在 PostgreSQL 我有

SELECT encode(md5('Test')::bytea, 'base64')

结果是“MGNiYzY2MTFmNTU0MGJkMDgwOWEzODhkYzk1YTYxNWI="。

如何获得类似 SQL Server 的结果?

【问题讨论】:

    标签: sql-server postgresql binary base64 bytea


    【解决方案1】:

    Postgres 的md5() 返回一个text,其中包含哈希的十六进制表示。通过简单地将其转换为bytea,您将获得该字符串的bytea,而不是它所代表的值。您可以使用decode() 获取字符串以十六进制表示的bytea 值。

    SELECT encode(decode(md5('Test'), 'hex'), 'base64');
    

    【讨论】:

      猜你喜欢
      • 2019-08-05
      • 2017-08-21
      • 2011-06-29
      • 2022-09-28
      • 1970-01-01
      • 1970-01-01
      • 2018-08-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多