我有第x列可以容纳20位或22位数字,第y列可以容纳22位数字。
如果列x的数字是20位长,我想在列y中加入第二位不等于0的数字。else(当列号为22位时),我想将列号与列号正常连接。
怎么做?
例如,
如果x列的数字为00000000000579701673(20位)和0000000000000 957821317(22位),y列的数字为9900000000000579701673(22位)和0000000000000 957821317(22位),我想将第x列的00000000000579701673(20位)与第y列的9900000000000579701673(22位)和第x列的0000000000000 957821317(22位)与第y列的0000000000000 957821317(22位)合并
如果列x是20位,那么前缀是从“01”到“99”的任意位置,我使用的是teradata sql assist
2条答案
按热度按时间y4ekin9u1#
根据你的逻辑,你需要预先准备好
'99'
如果字符串只有20个字符(与june7的答案类似,但使用标准sql/teradata语法):编辑:
根据您的注解,如果x有20位数字,则必须与以“01”开头的y列或“99”列连接这可能是您想要的:
zc0qhyus2#
以下是我认为您要查找的内容,我添加了关于两个连接条件的注解,这两个条件解释了我的理解。如果我误解了什么,请告诉我。我从未使用过teradatasql,所以您可能需要将len的用法改为length。