hbase2.1.x shell scan SingleColumnValueFilter 过滤某列时,也必须查询该列,否则过滤条件不生效 作者:马育民 • 2021-11-29 20:57 • 阅读:10114 # 描述问题 过滤条件中有 `age`,但只查询 `name` 列,此时查询过滤条件 **不生效**,因为没有查询 `age` [![](https://www.malaoshi.top/upload/pic/hbase/20220321_143212.png)](https://www.malaoshi.top/upload/pic/hbase/20220321_143212.png) ### 查询语句 查询 `age > 20` 的记录,如下: ``` scan 'student',{FILTER => "SingleColumnValueFilter('info','age',>,'binary:20')" ,COLUMNS =>['info:name'] } ``` **结果:**将所有数据都查询出来 **原因:** `age` 作为过滤条件,但是,没有查询 `age` 列,所以 过滤条件 **没生效**,将所有结果都查询出来 ### 解决 查询列中,加上 `age` 列即可 ``` scan 'student',{FILTER => "SingleColumnValueFilter('info','age',>,'binary:90')" ,COLUMNS =>['info:name','info:age'] } ``` 原文出处:http://malaoshi.top/show_1IX2JiyxsCB7.html