0
Может кто-нибудь объяснить мне, почему я получаю разные результаты:Различные результаты UTL_RAW.BIT_AND() и BITAND()
SELECT UTL_RAW.BIT_AND('FFFF', '00') AS test FROM DUAL;
-- result: 00FF (?? It seems he converted my 00 to 00FF, but 00 != 00FF)
SELECT TO_CHAR(BITAND(TO_NUMBER('FFFF', 'XXXX'), TO_NUMBER('00', 'XXXX')), 'XXXX') as test FROM DUAL;
-- result: 0 (as expected)
Я так далеко ... но зачем добавлять '1' вместо' 0'? –
Хвост (за пределами минимальной длины операндов) просто скопирован. Нет '1' s добавлены. –
Хорошо, это имеет смысл. Поэтому, если мой левый операнд равен «RAW (128)», мой правый операнд также должен быть «RAW (128)». Немного неудобно, но ОК, я думаю. Это замедлит работу. Нечего делать? –