不懂就问,请教 oracle 的位操作

2021-09-16 13:54:35 +08:00
 huifeng

select UTL_RAW.BIT_AND(HEXTORAW('ead11'),HEXTORAW('1')) from dual; 这个结果为什么么是 00AD11 ? 按我的理解不应该是 00001 吗

587 次点击
所在节点    问与答
2 条回复
huifeng
2021-09-16 14:00:25 +08:00
看了下方法说明 然后更不明白了
select UTL_RAW.BIT_AND(HEXTORAW('ead11'),HEXTORAW('00001')) from dual; 显示是 000001
huifeng
2021-09-16 14:02:04 +08:00
方法说明:
B.2.2 UTL_RAW.BIT_AND
UTL_RAW.BIT_AND performs a bitwise logical AND operation on two raw values. If the values have different lengths, then the AND operation is terminated after the last byte of the shorter of the two values. The unprocessed portion of the longer value is appended to the partial result to produce the final result. The length of the resulting value equals the longer of the two input values.

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/802278

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX