簡體   English   中英

MongoTemplate中的OrOperator不返回值?

[英]OrOperator in MongoTemplate not returning values?

我正在使用MongoDB開發Spring MVC。 我使用orOperator為某些字段添加了條件,每個字段在數據庫中都有值,但是列表返回為空。

criteriaQuery.addCriteria(Criteria.where("First_Name").is(docName.trim())
.orOperator(Criteria.where("Middle_Name").is(docName.trim())
.orOperator(Criteria.where("Last_Name").is(docName.trim()))));

控制台中的查詢打印是

 Query: { "First_Name" : "ESTHER" , "$or" : [ { "Middle_Name" : "ESTHER" , "$or" : [ { "Last_Name" : "ESTHER"}]}]}, Fields: null, Sort: null

我嘗試了Like查詢,但是結果也一樣

 criteriaQuery.addCriteria(Criteria.where("First_Name").regex(docName)
.orOperator(Criteria.where("Middle_Name").regex(docName))
    .orOperator(Criteria.where("Last_Name").regex(docName)));

Mongo查詢

db.doctor_details.find({  "$or" : {"First_Name" : { "$regex" : "ESTHER"} }, "$or" : [ { "Middle_Name" : { "$regex" : "ESTHER"} , "$or" : [ { "Last_Name" : { "$regex" : "ESTHER"}}]}]})

幫助我獲得結果,我不知道我的代碼在哪里出錯。 感謝幫助!

謝謝

據我記得,要使用orOperator,您應該執行以下操作:

Query query = new Query(new Criteria().orOperator(criteriaV1,criteriaV2));

基於這個答案

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM