public class SingleColumnValueCondition extends Object implements ColumnCondition
支持的比较关系包括:EQUAL(=), NOT_EQUAL(!=), GREATER_THAN(>), GREATER_EQUAL(>=), LESS_THAN(<)以及LESS_EQUAL(<=)。
由于TableStore一行的属性列不固定,有可能存在条件中的列在该行不存在的情况,这时passIfMissing
参数控制在这种情况下条件是否通过。
passIfMissing
为true,则若列在该行中不存在,则条件通过;
如果设置passIfMissing
为false,则若列在该行中不存在,则条件不通过。
默认值为true。
由于TableStore的属性列可能有多个版本,有可能存在该列的一个版本的值与给定值匹配但是另一个版本的值不匹配的情况,
这时latestVersionsOnly
参数控制在这种情况下对该行的过滤结果。
如果设置latestVersionsOnly
为true,则只会对最新版本的值进行比较, 默认值为true.
需要注意的是, 如果latestVersionsOnly
为false, 会对该列的所有版本(最新的max_versions个)进行比较,只要有一个版本的值匹配就认为条件成立。
限定符和类型 | 类和说明 |
---|---|
static class |
SingleColumnValueCondition.CompareOperator |
构造器和说明 |
---|
SingleColumnValueCondition(String columnName,
SingleColumnValueCondition.CompareOperator operator,
ColumnValue columnValue)
构造函数。
|
限定符和类型 | 方法和说明 |
---|---|
String |
getColumnName()
获取列名。
|
ColumnValue |
getColumnValue()
获取列的对比值。
|
ColumnConditionType |
getConditionType() |
SingleColumnValueCondition.CompareOperator |
getOperator()
获取列的比较操作符。
|
boolean |
isLatestVersionsOnly()
返回设置的latestVersionsOnly的值。
|
boolean |
isPassIfMissing()
返回设置的passIfMissing的值。
|
com.google.protobuf.ByteString |
serialize() |
SingleColumnValueCondition |
setColumnName(String columnName)
设置列的名称。
|
SingleColumnValueCondition |
setColumnValue(ColumnValue columnValue)
设置列的对比值。
|
SingleColumnValueCondition |
setLatestVersionsOnly(boolean latestVersionsOnly)
设置latestVersionsOnly。
|
SingleColumnValueCondition |
setOperator(SingleColumnValueCondition.CompareOperator operator)
设置列的比较操作符。
|
SingleColumnValueCondition |
setPassIfMissing(boolean passIfMissing)
设置passIfMissing。
|
SingleColumnValueFilter |
toFilter() |
public SingleColumnValueCondition(String columnName, SingleColumnValueCondition.CompareOperator operator, ColumnValue columnValue)
columnName
- 列的名称operator
- 比较函数columnValue
- 列的值public SingleColumnValueCondition.CompareOperator getOperator()
public SingleColumnValueCondition setOperator(SingleColumnValueCondition.CompareOperator operator)
operator
- 比较操作符public String getColumnName()
public SingleColumnValueCondition setColumnName(String columnName)
columnName
- 列的名称public ColumnValue getColumnValue()
public SingleColumnValueCondition setColumnValue(ColumnValue columnValue)
columnValue
- 列的对比值。public boolean isPassIfMissing()
public SingleColumnValueCondition setPassIfMissing(boolean passIfMissing)
由于TableStore一行的属性列不固定,有可能存在条件中的列在该行不存在的情况,这时passIfMissing
参数控制在这种情况下条件是否通过。
如果设置passIfMissing
为true,则若列在该行中不存在,则条件通过;
如果设置passIfMissing
为false,则若列在该行中不存在,则条件不通过。
默认值为true。
passIfMissing
- public boolean isLatestVersionsOnly()
public SingleColumnValueCondition setLatestVersionsOnly(boolean latestVersionsOnly)
由于TableStore的属性列可能有多个版本,有可能存在该列的一个版本的值与给定值匹配但是另一个版本的值不匹配的情况,
这时latestVersionsOnly
参数控制在这种情况下对该行的过滤结果。
如果设置latestVersionsOnly
为true,则只会对最新版本的值进行比较, 默认值为true.
需要注意的是, 如果latestVersionsOnly
为false, 会对该列的所有版本(最新的max_versions个)进行比较,只要有一个版本的值匹配就认为条件成立。
latestVersionsOnly
- public ColumnConditionType getConditionType()
getConditionType
在接口中 ColumnCondition
public SingleColumnValueFilter toFilter()
public com.google.protobuf.ByteString serialize()
serialize
在接口中 ColumnCondition
Copyright © 2018. All Rights Reserved.