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

Làm thế nào để chuyển đổi một chuỗi với các ký tự trong int cho toàn bộ bộ sưu tập?

Nếu bạn muốn chuyển đổi toàn bộ bộ sưu tập, bạn có thể thực hiện điều đó với Aggregation pipe.

Bạn cần chuyển đổi đơn vị tiền tệ sang chuỗi sử dụng $substr$toInt( hoặc $toDouble hoặc $convert bất cứ điều gì phù hợp với trường hợp của bạn) trong $project giai đoạn và $out là giai đoạn tổng hợp cuối cùng của bạn. $out ghi kết quả của đường ống tổng hợp vào tên bộ sưu tập đã cho.

Nhưng hãy cẩn thận khi sử dụng $out . Theo tài liệu mongodb chính thức:

Hãy thử điều này:

db.collection_name.aggregate([
    {
        $project: {
            category : "$category",
            category_name : "$category_name",
            lot_title : "$lot_title",
            seller_name : "$seller_name",
            seller_country : "$seller_country",
            bid_count : "$bid_count",
            winning_bid : { $toInt : {$substr : ["$winning_bid",2,-1]}},
            bid_amount : "$bid_amount",
            lot_image : "$lot_image"
        }
    },{
        $out : "collection_name"
    }
])

bạn có thể cần sử dụng allowDiskUse : true như một tùy chọn cho kênh tổng hợp, vì bạn có rất nhiều tài liệu và nó có thể vượt qua giới hạn mongodb 16MB.

Đừng quên thay thế collection_name với tên bộ sưu tập thực tế và bao gồm tất cả trường bắt buộc trong $project giai đoạn mà bạn cần trong bộ sưu tập. Và vui lòng kiểm tra lại giá trị trước bằng một temporary_collection khác hoặc chỉ bằng cách loại bỏ giai đoạn $ out và kiểm tra kết quả của aggregation đường ống dẫn.

Để biết thông tin chi tiết, hãy đọc tài liệu mongodb chính thức $ out , $ toInt , $ toDouble , $ chuyển đổi, $ substr allowDiskUse .




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Làm cách nào để bạn truy cập cơ sở dữ liệu MongoDB từ hai ứng dụng Openshift?

  2. Mongodb Tổng số mảng / kích thước tập hợp

  3. MongoDB $ sampleRate

  4. Trả về kết quả mongoose trong truy vấn tìm đến một biến

  5. Mongoose QueryStream kết quả mới