gpt4 book ai didi

amazon-redshift - 在 Redshift 中将 MD5 输出转换为 32 位整数

转载 作者:行者123 更新时间:2023-11-29 12:28:34 25 4
gpt4 key购买 nike

我在 Redshift 中尝试了以下内容

SELECT STRTOL(MD5('345793260804895811'), 10);

但我得到以下 DBCException:

SQL Error [22023]: ERROR: The input cf82576a6dbf9ff63cf9828f990f0673 is not valid to be converted to base 10

org.postgresql.util.PSQLException: PSQLException: ERROR: The input cf82576a6dbf9ff63cf9828f990f0673 is not valid to be converted to base 10

我如何在 Redshift 中完成这项工作?

最佳答案

你有两个问题:

  • 首先,您需要指定转换为 base 16
  • 其次,MD5 字符串会大量溢出 64 位 BIGINT

这很好用

SELECT STRTOL(LEFT(MD5('345793260804895811'),15), 16);

将 MD5 十六进制值缩短为最左边的 15 个字符,并使用基数 16 转换为 BIGINT

关于amazon-redshift - 在 Redshift 中将 MD5 输出转换为 32 位整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35552934/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com