Binary Sybase二进制文件到Teradata的转换

Binary Sybase二进制文件到Teradata的转换,binary,byte,teradata,Binary,Byte,Teradata,下面我有一个SQL查询 select convert(binary(20),convert(char(20),'-')) 输出为: 2D202020202020202020202020202020202020202002020 我想问一下与之相当的Teradata。 下面是我的问题 TO_BYTES(CAST ( LPAD('-', 20, '-') AS VARCHAR(20)) , 'ASCII' ) 但这导致了我的产出: 2D-2D-2D-2D-2D-2D-2D-2D-2D-00-00

下面我有一个SQL查询

select convert(binary(20),convert(char(20),'-'))
输出为: 2D202020202020202020202020202020202020202002020

我想问一下与之相当的Teradata。 下面是我的问题

TO_BYTES(CAST ( LPAD('-', 20, '-') AS VARCHAR(20)) , 'ASCII' )
但这导致了我的产出: 2D-2D-2D-2D-2D-2D-2D-2D-2D-00-00-00-00-00-00-00-00-00-00-00-00-00-00


注意:对于Teradata,连字符或-可以,只要输出是2D-20-20-20-20-20-20-20-20-20-20-20-20-20-20-20-20-20-20-20-20,您的结果与查询不匹配,但您使用的方法是错误的:-

LPAD添加前导字符,您需要RPAD,而不是尾随字符

TO_BYTES( RPAD('-', 20) , 'ASCII' )

顺便说一句,连字符只是为了使二进制数据的显示更具可读性。这是一个客户端设置,例如在SQL助手中:工具->选项->数据格式->显示二进制数据值字节之间的破折号

Wow!再次非常感谢!: