Unique 将12位唯一代码减少到10位

Unique 将12位唯一代码减少到10位,unique,digit,reduction,Unique,Digit,Reduction,我有一个问题,我们需要为一个表中的几百万行生成唯一的代码,这个表有几个其他的数据案例。 对于ex,表中有案例A、B、C的数据,每个案例都有一百万行 只需要为案例A中的数据生成唯一性 问题是——我们有一个12位的唯一数字(所有整数——它们不会在a中重复,但可以在a&B&C中重复……比如像CustomerID),但存储唯一代码(可以是字母数字)的空间只有10:) 试图找出一个解决方案,我们可以使用ascii来减少长度。例如,如果65出现在12位数字中,我们将把它读作“A”…..依此类推..这减少了1

我有一个问题,我们需要为一个表中的几百万行生成唯一的代码,这个表有几个其他的数据案例。 对于ex,表中有案例A、B、C的数据,每个案例都有一百万行

只需要为案例A中的数据生成唯一性

问题是——我们有一个12位的唯一数字(所有整数——它们不会在a中重复,但可以在a&B&C中重复……比如像CustomerID),但存储唯一代码(可以是字母数字)的空间只有10:)

试图找出一个解决方案,我们可以使用ascii来减少长度。例如,如果65出现在12位数字中,我们将把它读作“A”…..依此类推..这减少了1位..但不能保证65会出现


如果有任何线索,我们将不胜感激。

您考虑过将数字转换为十六进制表示形式吗?谢谢Jeroen。我试过这么做,但它给了我“无效数字”错误。该字段实际上存储为字符,因此我需要首先将其转换为数字(这也会产生相同的错误)。使用以下-to_编号(substr(,10,5),'XXXXXX')-尝试使用cast,但得到了相同的错误感谢Joren,在我们完成错误处理后,它工作得很好