在我的项目中,我有一个条件,我必须在同一列限定符上应用两个SingleColumnValue
过滤器。这两个过滤器用于检查列限定符是否包含值“A”或值“B”。但是,过滤器似乎不起作用。
FilterList filterList = new FilterList(Operator.MUST_PASS_ONE);
SingleColumnValueFilter filter2 = new SingleColumnValueFilter(Bytes.toBytes("data"), Bytes.toBytes("type"),CompareOp.EQUAL,Bytes.toBytes("A"));
filter2.setFilterIfMissing(true);
filterList.addFilter(filter2);
SingleColumnValueFilter filter1 = new SingleColumnValueFilter(Bytes.toBytes("data"), Bytes.toBytes("type"), CompareOp.EQUAL, Bytes.toBytes("B")); filter1.setFilterIfMissing(true);
filterList.addFilter(filter1);
这样做有什么不对吗?这是可能的,在同一个qualifer上应用两个过滤器吗?有没有其他解决方案?
提前致谢。
答案 0 :(得分:0)
解决上述问题的一个好方法是使用RegexStringComparator。
创建一个包含所需匹配项的RegexStringComparator,并将其与SingleColumnValueFilter一起使用。