com.mongodb.client.model.Filters.elemMatch()方法的使用及代码示例

x33g5p2x  于2022-01-19 转载在 其他  
字(6.9k)|赞(0)|评价(0)|浏览(333)

本文整理了Java中com.mongodb.client.model.Filters.elemMatch()方法的一些代码示例,展示了Filters.elemMatch()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Filters.elemMatch()方法的具体详情如下:
包路径:com.mongodb.client.model.Filters
类名称:Filters
方法名:elemMatch

Filters.elemMatch介绍

[英]Creates a filter that matches all documents containing a field that is an array where at least one member of the array matches the given filter.
[中]创建一个筛选器,该筛选器匹配包含一个字段的所有文档,该字段是一个数组,其中至少有一个数组成员与给定筛选器匹配。

代码示例

代码示例来源:origin: eclipse/ditto

@Override
public Bson visitFeatureProperty(final String property) {
  return Filters.elemMatch(FIELD_INTERNAL, Filters.and(
      Filters.eq(FIELD_INTERNAL_KEY, FIELD_FEATURE_PROPERTIES_PREFIX_WITH_ENDING_SLASH + property),
      predicateFunction.apply(FIELD_INTERNAL_VALUE)));
}

代码示例来源:origin: org.eclipse.ditto/ditto-services-thingsearch-persistence

@Override
public Bson visitFeatureProperty(final String property) {
  return Filters.elemMatch(FIELD_INTERNAL, Filters.and(
      Filters.eq(FIELD_INTERNAL_KEY, FIELD_FEATURE_PROPERTIES_PREFIX_WITH_ENDING_SLASH + property),
      predicateFunction.apply(FIELD_INTERNAL_VALUE)));
}

代码示例来源:origin: com.cybermkd/MongodbPlugin

public MongoQuery elemMatch(String key, MongoQuery query) {
  this.query.add(Filters.elemMatch(key, this.and(query.getQuery())));
  return this;
}

代码示例来源:origin: T-baby/MongoDB-Plugin

public MongoQuery elemMatch(String key, MongoQuery query) {
  this.query.add(Filters.elemMatch(key, this.and(query.getQuery())));
  return this;
}

代码示例来源:origin: org.eclipse.ditto/ditto-services-thingsearch-persistence

@Override
public Bson visitFeatureIdProperty(final String featureId, final String property) {
  return Filters.elemMatch(
      FIELD_INTERNAL,
      Filters.and(
          Filters.eq(FIELD_INTERNAL_KEY, FIELD_FEATURE_PROPERTIES_PREFIX_WITH_ENDING_SLASH + property),
          Filters.eq(FIELD_INTERNAL_FEATURE_ID, featureId),
          predicateFunction.apply(FIELD_INTERNAL_VALUE)));
}

代码示例来源:origin: eclipse/ditto

@Override
public Bson visitFeatureIdProperty(final String featureId, final String property) {
  return Filters.elemMatch(
      FIELD_INTERNAL,
      Filters.and(
          Filters.eq(FIELD_INTERNAL_KEY, FIELD_FEATURE_PROPERTIES_PREFIX_WITH_ENDING_SLASH + property),
          Filters.eq(FIELD_INTERNAL_FEATURE_ID, featureId),
          predicateFunction.apply(FIELD_INTERNAL_VALUE)));
}

代码示例来源:origin: org.eclipse.ditto/ditto-services-thingsearch-persistence

@Override
public Bson visitAttribute(final String key) {
  final String attributeKeyWithPrefix = FIELD_ATTRIBUTE_PREFIX_WITH_ENDING_SLASH + key;
  final Bson keyRestrictionBson = Filters.eq(FIELD_INTERNAL_KEY, attributeKeyWithPrefix);
  // match 'null' on 'f' field to be able to use the index
  final Bson nullFeatureId = new BsonDocument().append(FIELD_INTERNAL_FEATURE_ID, BsonNull.VALUE);
  return Filters.elemMatch(FIELD_INTERNAL,
      Filters.and(keyRestrictionBson, nullFeatureId, predicateFunction.apply(FIELD_INTERNAL_VALUE)));
}

代码示例来源:origin: creactiviti/piper

@Override
public Job findJobByTaskId(String aTaskId) {
 return collection
   .find(elemMatch(DSL.EXECUTION, eq("_id", aTaskId)))
   .first();
}

代码示例来源:origin: eclipse/ditto

@Override
public Bson visitAttribute(final String key) {
  final String attributeKeyWithPrefix = FIELD_ATTRIBUTE_PREFIX_WITH_ENDING_SLASH + key;
  final Bson keyRestrictionBson = Filters.eq(FIELD_INTERNAL_KEY, attributeKeyWithPrefix);
  // match 'null' on 'f' field to be able to use the index
  final Bson nullFeatureId = new BsonDocument().append(FIELD_INTERNAL_FEATURE_ID, BsonNull.VALUE);
  return Filters.elemMatch(FIELD_INTERNAL,
      Filters.and(keyRestrictionBson, nullFeatureId, predicateFunction.apply(FIELD_INTERNAL_VALUE)));
}

代码示例来源:origin: opencb/cellbase

private void createExpressionQuery(Query query, List<Bson> andBsonList) {
  if (query != null) {
    String tissue = query.getString(QueryParams.ANNOTATION_EXPRESSION_TISSUE.key());
    if (tissue != null && !tissue.isEmpty()) {
      String value = query.getString(QueryParams.ANNOTATION_EXPRESSION_VALUE.key());
      if (value != null && !value.isEmpty()) {
        andBsonList.add(Filters.elemMatch("annotation.expression",
            Filters.and(Filters.regex("factorValue", "(.)*" + tissue + "(.)*", "i"), Filters.eq("expression", value))));
      }
    }
  }
}

代码示例来源:origin: org.opencb.cellbase/cellbase-lib

private void createExpressionQuery(Query query, List<Bson> andBsonList) {
  if (query != null) {
    String tissue = query.getString(QueryParams.ANNOTATION_EXPRESSION_TISSUE.key());
    if (tissue != null && !tissue.isEmpty()) {
      String value = query.getString(QueryParams.ANNOTATION_EXPRESSION_VALUE.key());
      if (value != null && !value.isEmpty()) {
        andBsonList.add(Filters.elemMatch("annotation.expression",
            Filters.and(Filters.regex("factorValue", "(.)*" + tissue + "(.)*", "i"), Filters.eq("expression", value))));
      }
    }
  }
}

代码示例来源:origin: org.eclipse.ditto/ditto-services-thingsearch-persistence

@Override
public Bson visitFeatureIdProperty(final String featureId, final String property) {
  return Filters.elemMatch(PersistenceConstants.FIELD_INTERNAL,
      Filters.and(Filters.regex(PersistenceConstants.FIELD_INTERNAL_KEY,
      FieldExpressionUtil.wrapExistsRegex(
          PersistenceConstants.FIELD_FEATURE_PROPERTIES_PREFIX_WITH_ENDING_SLASH + property)),
      Filters.eq(PersistenceConstants.FIELD_INTERNAL_FEATURE_ID, featureId)));
}

代码示例来源:origin: eclipse/ditto

@Override
public Bson visitFeatureIdProperty(final String featureId, final String property) {
  return Filters.elemMatch(PersistenceConstants.FIELD_INTERNAL,
      Filters.and(Filters.regex(PersistenceConstants.FIELD_INTERNAL_KEY,
      FieldExpressionUtil.wrapExistsRegex(
          PersistenceConstants.FIELD_FEATURE_PROPERTIES_PREFIX_WITH_ENDING_SLASH + property)),
      Filters.eq(PersistenceConstants.FIELD_INTERNAL_FEATURE_ID, featureId)));
}

代码示例来源:origin: opencb/opencga

@Override
public Long variableSetExists(long variableSetId) {
  List<Bson> aggregation = new ArrayList<>();
  aggregation.add(Aggregates.match(Filters.elemMatch(QueryParams.VARIABLE_SET.key(),
      Filters.eq(VariableSetParams.UID.key(), variableSetId))));
  aggregation.add(Aggregates.project(Projections.include(QueryParams.VARIABLE_SET.key())));
  aggregation.add(Aggregates.unwind("$" + QueryParams.VARIABLE_SET.key()));
  aggregation.add(Aggregates.match(Filters.eq(QueryParams.VARIABLE_SET_UID.key(), variableSetId)));
  QueryResult<VariableSet> queryResult = studyCollection.aggregate(aggregation, variableSetConverter, new QueryOptions());
  return (long) queryResult.getResult().size();
}

代码示例来源:origin: opencb/opencga

Filters.elemMatch("annotations", Filters.and(
    Filters.eq("name", variableId),
    valueList.get(0)

代码示例来源:origin: opencb/opencga

query = eq(DocumentToVariantConverter.STUDIES_FIELD + '.' + STUDYID_FIELD, studyId);
} else {
  query = elemMatch(DocumentToVariantConverter.STUDIES_FIELD,
      and(
          eq(STUDYID_FIELD, studyId),

代码示例来源:origin: opencb/opencga

Bson bsonQuery;
for (String annotationId : annotationNames) {
  bsonQuery = Filters.elemMatch(AnnotationSetParams.ANNOTATION_SETS.key(), Filters.and(
      Filters.eq(AnnotationSetParams.VARIABLE_SET_ID.key(), variableSetId),
      Filters.eq(AnnotationSetParams.ANNOTATION_SET_NAME.key(), annotationId)

代码示例来源:origin: opencb/opencga

Bson studiesToRemoveQuery = elemMatch(DocumentToVariantConverter.STUDIES_FIELD,
    and(
        eq(STUDYID_FIELD, studyId),

相关文章