社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  MongoDB

Spring MongoDB数据元素匹配简单

user1955934 • 5 年前 • 269 次点击  
{ _id: 1, results: [ "tokyo", "japan" ] }
{ _id: 2, results: [ "sydney", "australia" ] }




db.scores.find(
   { results: { $elemMatch: { $regex: *some regex* } } }
)

如何使用SpringMongoDB数据查询条件转换这个简单的elemmatch示例?

如果数组包含对象,我可以这样做

Criteria criteria = 
   Criteria.where("results").
   elemMatch(
      Criteria.where("field").is("tokyo")
   );

但在我的问题上,我没有“场”

更新:

我想Veeram的答案在试验后会起作用。

Criteria criteria = 
   Criteria.where("results").
   elemMatch(
      new Criteria().is("tokyo")
   );

它不返回任何内容。我错过什么了吗?

当我检查查询对象时,它显示以下状态:

Query: { "setOfKeys" : { "$elemMatch" : { }}}, Fields: null, Sort: null

另一方面,如果我使用上面的criteria.where(“field”)修改标准,

Query: { "setOfKeys" : { "$elemMatch" : { "field" : "tokyo"}}}, Fields: null, Sort: null

我得到了一些东西,但这不是我的数据的结构,结果是一个字符串数组,而不是对象。 我实际上需要使用regex,为了简单起见,上面的示例使用。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/37880
 
269 次点击  
文章 [ 1 ]  |  最新文章 5 年前