MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

dữ liệu mùa xuân - Mongodb - Phương thức findBy cho các đối tượng lồng nhau

Chỉ cần sử dụng @Query chú thích về phương pháp đó.

public interface CustomRepository extends MongoRepository<PracticeQuestion, String> {

    @Query(value = "{ 'userId' : ?0, 'questions.questionID' : ?1 }", fields = "{ 'questions.questionID' : 1 }")
    List<PracticeQuestion> findByUserIdAndQuestionsQuestionID(int userId, int questionID);

}

Bằng cách thêm các trường fields một phần của @Query chú thích, bạn đang yêu cầu Mongo chỉ trả lại phần đó của tài liệu. Tuy nhiên, hãy cẩn thận, nó vẫn trả về toàn bộ tài liệu ở cùng một định dạng - chỉ thiếu mọi thứ bạn không chỉ định. Vì vậy, mã của bạn sẽ vẫn phải trả về List<PracticeQuestion> và bạn sẽ phải làm:

foreach (PracticeQuestion pq : practiceQuestions) {
    Question q = pq.getQuestions().get(0); // This should be your question.
}


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB và CodeIgniter

  2. MongoDB:Chỉ tìm nạp các tài liệu được tạo trong 24 giờ qua?

  3. Cách cài đặt MongoDB Community Edition trên Ubuntu

  4. nhiều toán tử cập nhật mongo trong một câu lệnh?

  5. 3 cách sắp xếp tài liệu trong MongoDB