本文整理汇总了Java中org.pentaho.di.core.Condition.FUNC_LARGER_EQUAL属性的典型用法代码示例。如果您正苦于以下问题:Java Condition.FUNC_LARGER_EQUAL属性的具体用法?Java Condition.FUNC_LARGER_EQUAL怎么用?Java Condition.FUNC_LARGER_EQUAL使用的例子?那么恭喜您, 这里精选的属性代码示例或许可以为您提供帮助。您也可以进一步了解该属性所在类org.pentaho.di.core.Condition
的用法示例。
在下文中一共展示了Condition.FUNC_LARGER_EQUAL属性的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: convertAtomicConditionToSql
private String convertAtomicConditionToSql(Condition atomicCondition) throws KettleValueException {
StringBuilder sql = new StringBuilder();
String fieldName = atomicCondition.getLeftValuename();
FieldVariableMapping mapping = FieldVariableMapping.findFieldVariableMappingByFieldName(service.getFieldVariableMappings(), atomicCondition.getLeftValuename());
if (mapping!=null) {
fieldName=mapping.getTargetName();
}
sql.append(fieldName).append(" ");
switch(atomicCondition.getFunction()) {
case Condition.FUNC_EQUAL: sql.append("="); break;
case Condition.FUNC_NOT_EQUAL: sql.append("<>"); break;
case Condition.FUNC_LARGER: sql.append(">"); break;
case Condition.FUNC_LARGER_EQUAL: sql.append(">="); break;
case Condition.FUNC_SMALLER: sql.append("<"); break;
case Condition.FUNC_SMALLER_EQUAL: sql.append("<="); break;
case Condition.FUNC_NULL: sql.append("IS NULL"); break;
case Condition.FUNC_NOT_NULL: sql.append("IS NOT NULL"); break;
case Condition.FUNC_CONTAINS: sql.append("LIKE"); break;
}
sql.append(" ");
sql.append(getAtomicConditionRightSql(atomicCondition));
return sql.toString();
}
示例2: convertAtomicConditionToJson
private String convertAtomicConditionToJson(Condition atomicCondition) throws KettleValueException {
StringBuilder sql = new StringBuilder();
if (atomicCondition.getRightValuename()!=null) {
throw new KettleValueException("Converting a condition that compares 2 fields is not yet supported in a JSON query");
}
String fieldName = atomicCondition.getLeftValuename();
FieldVariableMapping mapping = FieldVariableMapping.findFieldVariableMappingByFieldName(service.getFieldVariableMappings(), atomicCondition.getLeftValuename());
if (mapping!=null) {
fieldName=mapping.getTargetName();
}
switch(atomicCondition.getFunction()) {
case Condition.FUNC_EQUAL: sql.append("'").append(fieldName).append("' : ").append(getJsonString(atomicCondition.getRightExact())); break;
case Condition.FUNC_NOT_EQUAL: sql.append("'").append(fieldName).append("' : { '$ne' : ").append(getJsonString(atomicCondition.getRightExact())).append(" }"); break;
case Condition.FUNC_LARGER: sql.append(">"); sql.append("'").append(fieldName).append("' : { '$gt' : ").append(getJsonString(atomicCondition.getRightExact())).append(" }"); break;
case Condition.FUNC_LARGER_EQUAL: sql.append(">"); sql.append("'").append(fieldName).append("' : { '$gte' : ").append(getJsonString(atomicCondition.getRightExact())).append(" }"); break;
case Condition.FUNC_SMALLER: sql.append("<"); sql.append(">"); sql.append("'").append(fieldName).append("' : { '$lt' : ").append(getJsonString(atomicCondition.getRightExact())).append(" }"); break;
case Condition.FUNC_SMALLER_EQUAL: sql.append("<="); sql.append(">"); sql.append("'").append(fieldName).append("' : { '$lte' : ").append(getJsonString(atomicCondition.getRightExact())).append(" }"); break;
case Condition.FUNC_NULL: sql.append("IS NULL"); sql.append(">"); sql.append("'").append(fieldName).append("' : \"\""); break;
case Condition.FUNC_NOT_NULL: sql.append("'").append(fieldName).append("' : { '$ne' : ").append("\"\"").append(" }"); break;
case Condition.FUNC_CONTAINS: sql.append("'").append(fieldName).append("' : { '$regex' : '.*").append(atomicCondition.getRightExactString()).append(".*', '$options' : 'i' }"); break;
}
return sql.toString();
}
示例3: splitConditionClause
/**
* We need to split conditions on a single operator (for now)
*
* @param clause
* @return 3 string list (left, operator, right)
* @throws KettleSQLException
*/
private List<String> splitConditionClause(String clause) throws KettleSQLException {
List<String> strings = new ArrayList<String>();
String[] operators = new String[] { "<>", ">=", "=>", "<=", "=<", "<", ">", "=", " REGEX ", " IN ", " IS NOT NULL", " IS NULL", " LIKE", "CONTAINS " };
int[] functions = new int[] {
Condition.FUNC_NOT_EQUAL,
Condition.FUNC_LARGER_EQUAL,
Condition.FUNC_LARGER_EQUAL,
Condition.FUNC_SMALLER_EQUAL,
Condition.FUNC_SMALLER_EQUAL,
Condition.FUNC_SMALLER,
Condition.FUNC_LARGER,
Condition.FUNC_EQUAL,
Condition.FUNC_REGEXP,
Condition.FUNC_IN_LIST,
Condition.FUNC_NOT_NULL,
Condition.FUNC_NULL,
Condition.FUNC_LIKE,
Condition.FUNC_CONTAINS,
};
int index=0;
while (index<clause.length()) {
index = ThinUtil.skipChars(clause, index, '\'', '"' );
for (String operator : operators) {
if (index<=clause.length()-operator.length()) {
if (clause.substring(index).toUpperCase().startsWith(operator)) {
int functionIndex = Const.indexOfString(operator, operators);
// OK, we found an operator.
// The part before is the first string
//
String left = Const.trim(clause.substring(0, index));
String op = Condition.functions[functions[functionIndex]];
String right = Const.trim(clause.substring(index+operator.length()));
strings.add(left);
strings.add(op);
strings.add(right);
return strings;
}
}
}
index++;
}
return strings;
}