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

sắp xếp theo độ dài chuỗi trong Mongodb / pymongo

Có rất nhiều thứ (và API cơ bản) cá nhân tôi yêu thích để xem trong khung tổng hợp chẳng hạn như:

Các hàm toán học

  • log (như trong logarit)
  • ceil
  • tầng

Mảng

  • tổng hợp

Chuỗi

  • độ dài

Chỉ để nêu tên một số.

Và điều đó không cần dùng đến cách sử dụng của $mod nhà điều hành hoặc các phương tiện khác trong các trường hợp như "ceil" và "floor". Nhưng tôi lạc đề.

"Độ dài chuỗi" của bạn thuộc loại này. Đặt vấn đề JIRA về nó. Nhưng hiện tại, bạn có thể sử dụng mapReduce và chức năng JavaScript hiện có:

db.collection.mapReduce(
    function() {
        emit( this.item.length, this.item );
    },
    function(key,values) {
        return values;
    },
    { "out": { "inline": 1 } }
)

Vì vậy, mặc dù điều đó thực sự có phong cách sôi nổi "mapReduce" là trả về một tài liệu được định hình lại và tất nhiên mọi thứ đều khớp với cùng độ dài trong một mảng, nhưng những gì nó làm là tận dụng bản chất của "mapReduce" (không chỉ bị hạn chế sang MongoDB) và cho phép sắp xếp giá trị "khóa" đã phát ra trong phản hồi.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Bộ lọc tổng hợp sau khi tra cứu $

  2. MongoDB:Đang cập nhật subocument

  3. Bạn có thể có mongo $ push prepend thay vì append không?

  4. MongoDB $ atan

  5. Đối số được chuyển vào phải là một chuỗi 12 byte