#BIN
BIN函数将expr表示的一个数据转换成BIT二进制,并以VARCHAR类型承载该BIT值进行返回。
expr的值为数值型、可以转换为NUMBER类型的其他类型(转换失败返回类型转换错误)或RAW、LOB类型,如输入其他类型,会返回错误。
expr不支持XMLTYPE、JSON类型数据和32000字节以上LOB类型数据。
当expr值为带有小数的NUMBER类型(或转换后为NUMBER类型)时,函数截断其小数位保留整数位。
上述所涉及的整数数值不能超过int64所能表示的数字范围。
expr在字面上除NULL(此时函数返回NULL)外,应该只包含0和1(除了可以b开头,表示二进制字符串),否则函数返回invalid string错误。当为b开头的二进制字符串时,需满足YashanDB对BIT类型的长度约束。
当expr的值为负数时,函数返回对应数值的64位补码。
示例
SELECT BIN('2345.34') res FROM DUAL;
RES
--------------
100100101001
SELECT BIN(b'0100101010') res FROM DUAL;
RES
------------------
100101010
SELECT BIN(-235) res FROM DUAL;
RES
----------------------------------------------------------------
1111111111111111111111111111111111111111111111111111111100010101