mongodb根據子項中的指標尋找最小或最大值

來源:互聯網
上載者:User

標籤:最小   project   尋找   gate   需要   name   使用   假設   它的   

假設students集合中有這樣的資料:

{        "_id" : 1,        "name" : "Aurelia Menendez",        "scores" : [                {                        "type" : "exam",                        "score" : 60.06045071030959                },                {                        "type" : "quiz",                        "score" : 52.79790691903873                },                {                        "type" : "homework",                        "score" : 71.76133439165544                },                {                        "type" : "homework",                        "score" : 34.85718117893772                }        ]},{        "_id" : 3,        "name" : "Bao Ziglar",        "scores" : [                {                        "type" : "exam",                        "score" : 71.64343899778332                },                {                        "type" : "quiz",                        "score" : 24.80221293650313                },                {                        "type" : "homework",                        "score" : 1.694720653897219                },                {                        "type" : "homework",                        "score" : 42.26147058804812                }        ]},{        "_id" : 2,        "name" : "Corliss Zuk",        "scores" : [                {                        "type" : "exam",                        "score" : 67.03077096065002                },                {                        "type" : "quiz",                        "score" : 6.301851677835235                },                {                        "type" : "homework",                        "score" : 20.18160621941858                },                {                        "type" : "homework",                        "score" : 66.28344683278382                }        ]}

需要找出每個學產生績最小值,可使用如下語句:

db.students.aggregate([{$project: {minScore: {$min: "$scores.score"}}}])

語句裡面的minScore等於是一個別名,可以使用其它的。結果如下:

{ "_id" : 1, "minScore" : 34.85718117893772 }{ "_id" : 3, "minScore" : 1.694720653897219 }{ "_id" : 2, "minScore" : 6.301851677835235 }{ "_id" : 4, "minScore" : 19.21886443577987 }{ "_id" : 5, "minScore" : 10.53058536508186 }{ "_id" : 7, "minScore" : 42.48780666956811 }{ "_id" : 6, "minScore" : 16.58341639738951 }{ "_id" : 8, "minScore" : 14.63969941335069 }{ "_id" : 9, "minScore" : 12.47568017314781 }{ "_id" : 0, "minScore" : 1.463179736705023 }{ "_id" : 12, "minScore" : 14.78936520432093 }{ "_id" : 13, "minScore" : 78.18795058912879 }{ "_id" : 14, "minScore" : 13.66179556675781 }{ "_id" : 11, "minScore" : 15.81264595052612 }{ "_id" : 16, "minScore" : 7.772386442858281 }{ "_id" : 15, "minScore" : 3.311794422000724 }{ "_id" : 18, "minScore" : 62.12870233109035 }{ "_id" : 17, "minScore" : 31.15090466987088 }{ "_id" : 10, "minScore" : 19.31113429145131 }{ "_id" : 19, "minScore" : 0.6578497966368002 }

mongodb根據子項中的指標尋找最小或最大值

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.