通过Python UDF在AWS Redshift中重新创建varbinary十六进制字符串

2024-05-16 21:41:27 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个sqlserver数据库,其中uniqueidentifiers被转换并存储为varbinary(8),即

DECLARE @OrganisationID uniqueidentifier = '910D514A-8706-4BA1-9327-FE92EF4165E3';
SELECT CONVERT(varbinary(8), @OrganisationID, 1); /* 0x4A510D910687A14B */

现在我需要在AWS Redshift数据库中重新创建这些uniqueidentifier的十六进制表示。在

在redshift中没有与varbinary类型等价的类型,所以我相信唯一可以做到这一点的方法是通过python UDF?我已经成功地创建了一个UDF,它接受一个字符串,将该字符串转换为字节,然后从那里创建一个十六进制字符串。但是我不能让他们匹配。有没有一种方法可以格式化下面python生成的十六进制字符串,以匹配sqlvarbinary 0x4A510D910687A14B?在

^{pr2}$

Tags: 方法字符串aws数据库类型convertselectdeclare