我正在处理SQL中的一个问题,该问题需要将十进制数转换为二进制字符串(分别取决于某些条件,分别为8位和32位)。
我正在使用SAP HANA,因此仅限于HANA SQL方言。
到目前为止,我来了:
SELECT
bitand(32832, 1)/power(2,0)||
bitand(32832, 2)/power(2,1)||
bitand(32832, 4)/power(2,2)||
bitand(32832, 8)/power(2,3)||
bitand(32832, 16)/power(2,4)||
bitand(32832, 32)/power(2,5)||
bitand(32832, 64)/power(2,6) ect...
FROM DUMMY;
对于8位数字,它应该提高到power(2,8)。但是,一个32位数字需要32个power(2,n)项,我觉得这很讨厌。
是否存在某种方法或SQL函数将数字转换为n位二进制字符串?