?

MongoDB是詢(xún)數一個(gè)開(kāi)源的NoSQL數據庫,它使用BSON(類(lèi)似于JSON)格式存儲數據,組里值在MongoDB中,詢(xún)數數組是組里值(zhi)一種常見(jiàn)的數據結構,可以用來(lái)存儲多個(gè)值,詢(xún)數本文將介紹如何在MongoDB中查??詢(xún)數組里面的組里值元素。??
1、詢(xún)數基本查詢(xún)??
要查詢(xún)數組中的組里值某個(gè)元素,可以使用$in操作符。詢(xún)數$in操作符用于匹配數組中的組里值任意一個(gè)元素,假設我們有一個(gè)名為students的詢(xún)數集合,其中每個(gè)文檔都有一個(gè)名為hobbies的組里值數組字段,我們可以使用以下查詢(xún)來(lái)查找所有喜歡足球的詢(xún)數學(xué)生:
db.students.find({ "hobbies": { "??$in&q(╯°□°)╯uot;: ["football"] } })2、查詢(xún)數組中的組里值多個(gè)元素
如果要查詢(xún)數組中的多個(gè)元素,可以在$in操作符后面提供一個(gè)包含多個(gè)元素的詢(xún)數數組,要查找喜歡足球和籃球的學(xué)生,可以使用以下查詢(xún):
db.students.find({ "hobbies": { "$in": ["football", "basketball"] } })3、查詢(xún)數組中不存在的元素
要查詢(xún)數組中不存在的元素,可以使用$nin操作符。$nin操作符用于匹配數(shu)組中不存在的元素??,要查找不喜歡足球、籃球和(he)乒乓球的學(xué)??生,可以使用以下查詢(xún):
db.stud(′?ω?`)ents.find({ "hobbies": { "??;$nin(╬?益?)"??: ["football", "basketball", "pingpong"] } })4、查詢(xún)數組中存在特定元素的所有文檔
要查詢(xún)數組中存在特定元素的(?⊿?)所有文檔,可以使用$all操作符。$all操作符用(yong)于匹配數組中所有元素都存在的文檔,要查找所有喜歡足球、籃球和乒乓球的學(xué)生,可以使用以下(′▽?zhuān)?)查詢(xún):
db.students.find({ "hobbies": { "$all&┐(′д`)┌quot;: ["(′_`);football", "basketball", "pingpong"] } })5、查詢(xún)數組中至少包含一個(gè)特定元素的文檔
要查詢(xún)數組中至少包含一個(gè)特定元素的文檔,可以使用$elem??Match操作符。$elemMatch操作??符用于匹配數組中滿(mǎn)足特定條件的文檔,要查找至少喜歡一種球類(lèi)運動(dòng)的學(xué)生,可以使用以下查詢(xún):
db.s(′?`)tudents.find({ "??hobbies": { "$elemMatch&qu??ot;: { "$in": ["(′▽?zhuān)?;football", "basketball&q??uot(???);, "p??ingpong"] } } })6、查詢(xún)數組長(cháng)度大于等于(yu)某個(gè)值的文檔
要查詢(xún)數組長(cháng)度大于等于某??個(gè)值的文檔,可以使用$size操作符。$size操作符用于匹配數組長(cháng)度大于等于指定值的文檔,要查找至少有三個(gè)愛(ài)好的學(xué)生,可以使用以下查詢(xún):
db.students.find({ "hobbies": { "$size": { "$gte": 3 } } })要查詢(xún)數組長(cháng)度小于等于某個(gè)值的文檔,可以使用$not和$size操作符組合,要查找愛(ài)好不超過(guò)兩個(gè)的學(xué)生,(′▽?zhuān)?可以使用以下查詢(xún):
db.students.find({ "?;hobbies": { "$not(°o°)": { "$size": { "$gte": 3 } } } })8、查詢(xún)數組中包含特定對象的所有文檔
要查詢(xún)數組中包含??特定對象的所有┐(′д`)┌文檔,可以使用$exists操作符。$exi??sts操作符用于匹配數組中存在指定對(dui)象的文檔,要查找所( ?ω?)有喜歡足球的??學(xué)生,可以使用以下查詢(xún):
db.students.find({ "hobbies": { "$exists": true, "$eq&qu???ot;: &q(′?_?`)uot;football" } })要查詢(xún)數組中不包含特定對象的所有文檔,可以使用$ne操作符。$ne操作符用于匹配數組中不存在指定對象的文檔,要查找所有不喜歡足球的學(xué)生,可以使用以下查詢(xún):
db.student??s.find({ "hobbies": { "$ne": "f???ootball" } })10、查詢(xún)數組中包含特定??對象的第一個(gè)位置的所有ヽ(′ー`)ノ文檔
要查詢(xún)數組中包含特定對象的第一個(gè)位置的所有文檔,可以使用$positionalOpera?tors操作符,要查找所有足球作為第(╯°□°)╯(di)一個(gè)愛(ài)好的學(xué)生,可以使用以(yi)下查詢(xún):
db.students.find({ &qu(′▽?zhuān)?)ot;hobbies&qu??ot;: { "$elemMatch": { "$eq": "football", "$gt": -1 } } })以上就是在MongoDB中查詢(xún)數組里面元素的一些常用方法,希望對您有所幫助!
友情鏈接:
宜州圓萬(wàn)網(wǎng)絡(luò )科技有限公司
© 2013-2025.Company name All rights reserved.網(wǎng)站地圖 天津九安特機電工程有限公司-More Templates