我尝试使用MYSQL(如有必要,使用UDF)实现位过滤器。该过滤器类似于AND,但我想使用掩码来构建新的位字符串...让我用样本向您解释一下:
假设我有一个表,其中包含存储8位流的blob:
data1: 10110110 data2: 01100010 data3: 00010011
然后我有一个掩码,可以在mask值为1时应用以获取数据中的位:
MASK: 00101011
因此得到以下预期结果:
data1: 1010 data2: 1010 data3: 0011
是否有一种优化过滤的方法,而不必循环遍历“mask”中的每个位以获得“data”行中相应的值...
澄清:
我只是为了发布而取了8位,但它更像256字节。
为了澄清示例,掩码00101011被解释为:如果您从左到右阅读掩码,并从第1位到第8位进行枚举,则从数据字段的第3、5、7、8位获取位值...希望这个澄清是“清楚”的...
假设我有一个表,其中包含存储8位流的blob:
data1: 10110110 data2: 01100010 data3: 00010011
然后我有一个掩码,可以在mask值为1时应用以获取数据中的位:
MASK: 00101011
因此得到以下预期结果:
data1: 1010 data2: 1010 data3: 0011
是否有一种优化过滤的方法,而不必循环遍历“mask”中的每个位以获得“data”行中相应的值...
澄清:
我只是为了发布而取了8位,但它更像256字节。
为了澄清示例,掩码00101011被解释为:如果您从左到右阅读掩码,并从第1位到第8位进行枚举,则从数据字段的第3、5、7、8位获取位值...希望这个澄清是“清楚”的...