MongoDB lte chuỗi

Tạo bộ lọc khớp với tất cả các tài liệu có giá trị của trường đã cho nhỏ hơn hoặc bằng giá trị đã chỉ định

Các phương pháp phổ biến của Bộ lọc

  • tương đương

    Tạo một bộ lọc phù hợp với tất cả các tài liệu trong đó giá trị của tên trường bằng v đã chỉ định

  • Tạo bộ lọc thực hiện logic AND của danh sách bộ lọc được cung cấp. Lưu ý rằng điều này sẽ bật

  • hoặc

    Tạo bộ lọc thực hiện OR logic của danh sách bộ lọc được cung cấp

  • Trong

    Tạo một bộ lọc phù hợp với tất cả các tài liệu trong đó giá trị của một trường bằng với bất kỳ giá trị nào trong danh sách

  • biểu thức chính quy

    Tạo một bộ lọc khớp với tất cả các tài liệu trong đó giá trị của trường khớp với giá trị thông thường đã cho

  • tồn tại

    Tạo một bộ lọc phù hợp với tất cả các tài liệu chứa hoặc không chứa trường đã cho, d

  • gte

    Tạo bộ lọc khớp với tất cả các tài liệu có giá trị của trường đã cho lớn hơn hoặc bằng

  • trung úy

    Tạo bộ lọc phù hợp với tất cả các tài liệu trong đó giá trị của trường đã cho nhỏ hơn thông số kỹ thuật

  • gt

    Tạo bộ lọc khớp với tất cả các tài liệu có giá trị của trường đã cho lớn hơn s

  • ne

    Tạo một bộ lọc phù hợp với tất cả các tài liệu trong đó giá trị của tên trường không bằng spe

  • nin

    Tạo một bộ lọc phù hợp với tất cả các tài liệu trong đó giá trị của một trường không bằng bất kỳ giá trị cụ thể nào.

  • không phải

    Tạo một bộ lọc khớp với tất cả các tài liệu không khớp với bộ lọc được chuyển vào. Yêu cầu tệp

  • nin,
  • không phải,
  • elemMatch,
  • cũng không,
  • chữ,
  • tất cả các,
  • tạoNearFilterDocument,
  • kích thước,
  • loại

Phổ biến trong Java

  • Tìm vị trí thiết bị Android hiện tại
  • getSharedPreferences (Ngữ cảnh)
  • getContentResolver (Ngữ cảnh)
  • getSystemService (Bối cảnh)
  • Điểm (java. awt)

    Một điểm đại diện cho một vị trí trong không gian tọa độ (x,y), được chỉ định ở độ chính xác số nguyên

  • Ngày (java. sử dụng)

    Một thời điểm cụ thể trong thời gian, với độ chính xác đến mili giây. Các giá trị thường đến từ System#currentTime

  • Thuộc tính (java. sử dụng)

    Đối tượng Thuộc tính là một Hashtable trong đó các khóa và giá trị phải là Chuỗi. Mỗi tài sản có thể có

  • Tham khảo (javax. đặt tên)
  • JTextField (javax. xích đu)
  • SAXParseException (org. xml. sax)

    Đóng gói một cảnh báo hoặc lỗi phân tích cú pháp XML. > Mô-đun này, cả mã nguồn và tài liệu, nằm trong t

  • Từ CI đến AI. Lớp AI trong tổ chức của bạn

Tôi nghĩ rằng tôi cần phân tích ngày thành ISODate trước rồi hủy cấu trúc năm nhưng không thực sự chắc chắn về cách thực hiện truy vấn

Bất kỳ hướng dẫn?

Cảm ơn rất nhiều

- stackoverflow. com

ghi bàn. 3

câu trả lời được chấp nhận

Bạn không thể chỉ truy vấn năm từ một chuỗi. Bạn phải chuyển đổi trường thành ngày và lấy năm từ trường đó. Tôi khuyên bạn nên sử dụng khung tổng hợp cho việc này như sau

Đối với hầu hết các kiểu dữ liệu, toán tử so sánh chỉ thực hiện so sánh trên các trường trong đó loại BSON khớp với loại của giá trị truy vấn. MongoDB hỗ trợ so sánh chéo BSON hạn chế thông qua

ví dụ

Các ví dụ sau sử dụng bộ sưu tập

db.inventory.find( { quantity: { $lte: 20 } } )
1. Tạo bộ sưu tập

db.inventory.insertMany( [   {      "item": "nuts", "quantity": 30,      "carrier": { "name": "Shipit", "fee": 3 }   },   {      "item": "bolts", "quantity": 50,      "carrier": { "name": "Shipit", "fee": 4 }   },   {      "item": "washers", "quantity": 10,      "carrier": { "name": "Shipit", "fee": 1 }   }] )

Khớp các trường tài liệu

Xem xét ví dụ sau

db.inventory.find( { quantity: { $lte: 20 } } )

Truy vấn này sẽ chọn tất cả các tài liệu trong bộ sưu tập

db.inventory.find( { quantity: { $lte: 20 } } )
1 có giá trị trường
db.inventory.find( { quantity: { $lte: 20 } } )
3 nhỏ hơn hoặc bằng
db.inventory.find( { quantity: { $lte: 20 } } )
4

đầu ra ví dụ

{  _id: ObjectId("61ba453ffe687fce2f04241c"),  item: 'washers',  quantity: 10,  carrier: { name: 'Shipit', fee: 1 }}

Thực hiện Cập nhật dựa trên các trường tài liệu được nhúng

Ví dụ sau đặt trường

db.inventory.find( { quantity: { $lte: 20 } } )
5 dựa trên so sánh với một trường trong tài liệu được nhúng

________số 8

đầu ra ví dụ

{  _id: ObjectId("61ba453ffe687fce2f04241a"),  item: 'nuts',  quantity: 30,  carrier: { name: 'Shipit', fee: 3 },  price: 9.99},{  _id: ObjectId("61ba453ffe687fce2f04241b"),  item: 'bolts',  quantity: 50,  carrier: { name: 'Shipit', fee: 4 },  price: 9.99},{  _id: ObjectId("61ba453ffe687fce2f04241c"),  item: 'washers',  quantity: 10,  carrier: { name: 'Shipit', fee: 1 },  price: 9.99}

Thao tác này tìm kiếm một tài liệu nhúng,

db.inventory.find( { quantity: { $lte: 20 } } )
8, với một trường con có tên là
db.inventory.find( { quantity: { $lte: 20 } } )
9. Nó đặt
{  _id: ObjectId("61ba453ffe687fce2f04241c"),  item: 'washers',  quantity: 10,  carrier: { name: 'Shipit', fee: 1 }}
0 trong mỗi tài liệu trong đó
db.inventory.find( { quantity: { $lte: 20 } } )
9 có giá trị nhỏ hơn hoặc bằng 5

Để đặt giá trị của trường

db.inventory.find( { quantity: { $lte: 20 } } )
5 chỉ trong tài liệu đầu tiên khi
{  _id: ObjectId("61ba453ffe687fce2f04241c"),  item: 'washers',  quantity: 10,  carrier: { name: 'Shipit', fee: 1 }}
3 nhỏ hơn hoặc bằng 5, hãy sử dụng