欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

MongoDB之數(shù)據(jù)查詢(數(shù)組)

首先在MongoDB里面是支持數(shù)組保存的,一旦支持了數(shù)組保存,就需要針對于數(shù)組的數(shù)據(jù)進行匹配。

范例:保存一部分數(shù)組內(nèi)容
db.emp.insert({"name":"劉A","sex":"男","age":35,"sal":8000,"loc":"北京","course":["語文","數(shù)學","英語","音樂","政治"]});
db.emp.insert({"name":"劉B","sex":"男","age":35,"sal":8000,"loc":"北京","course":["語文","數(shù)學"]});
db.emp.insert({"name":"劉C","sex":"男","age":35,"sal":8000,"loc":"北京","course":["語文","數(shù)學","英語"]});
db.emp.insert({"name":"劉D","sex":"男","age":35,"sal":8000,"loc":"北京","course":["語文","數(shù)學","政治"]});
db.emp.insert({"name":"劉E","sex":"男","age":35,"sal":8000,"loc":"北京","course":["語文","政治"]});

> db.emp.find().pretty();
{
        "_id" : ObjectId("599108423268c8e84253be26"),
        "name" : "趙一",
        "sex" : "男",
        "age" : 30,
        "sal" : 1000,
        "loc" : "北京"
}
{
        "_id" : ObjectId("599108423268c8e84253be27"),
        "name" : "錢二",
        "sex" : "女",
        "age" : 22,
        "sal" : 5000,
        "loc" : "上海"
}
{
        "_id" : ObjectId("599108423268c8e84253be28"),
        "name" : "孫三",
        "sex" : "男",
        "age" : 40,
        "sal" : 2000,
        "loc" : "深圳"
}
{
        "_id" : ObjectId("599108423268c8e84253be29"),
        "name" : "李四",
        "sex" : "女",
        "age" : 30,
        "sal" : 7000,
        "loc" : "北京"
}
{
        "_id" : ObjectId("599108423268c8e84253be2a"),
        "name" : "周五",
        "sex" : "女",
        "age" : 30,
        "sal" : 6400,
        "loc" : "北京"
}
{
        "_id" : ObjectId("599108423268c8e84253be2b"),
        "name" : "吳六",
        "sex" : "男",
        "age" : 30,
        "sal" : 2500,
        "loc" : "重慶"
}
{
        "_id" : ObjectId("599108423268c8e84253be2c"),
        "name" : "鄭七",
        "sex" : "女",
        "age" : 50,
        "sal" : 4700,
        "loc" : "成都"
}
{
        "_id" : ObjectId("599108433268c8e84253be2d"),
        "name" : "王八",
        "sex" : "男",
        "age" : 35,
        "sal" : 8000,
        "loc" : "北京"
}
{
        "_id" : ObjectId("599129a00184ff511bf02b87"),
        "name" : "劉A",
        "sex" : "男",
        "age" : 35,
        "sal" : 8000,
        "loc" : "北京",
        "course" : [
                "語文",
                "數(shù)學",
                "英語",
                "音樂",
                "政治"
        ]
}
{
        "_id" : ObjectId("599129a00184ff511bf02b88"),
        "name" : "劉B",
        "sex" : "男",
        "age" : 35,
        "sal" : 8000,
        "loc" : "北京",
        "course" : [
                "語文",
                "數(shù)學"
        ]
}
{
        "_id" : ObjectId("599129a00184ff511bf02b89"),
        "name" : "劉C",
        "sex" : "男",
        "age" : 35,
        "sal" : 8000,
        "loc" : "北京",
        "course" : [
                "語文",
                "數(shù)學",
                "英語"
        ]
}
{
        "_id" : ObjectId("599129a00184ff511bf02b8a"),
        "name" : "劉D",
        "sex" : "男",
        "age" : 35,
        "sal" : 8000,
        "loc" : "北京",
        "course" : [
                "語文",
                "數(shù)學",
                "政治"
        ]
}
{
        "_id" : ObjectId("599129a20184ff511bf02b8b"),
        "name" : "劉E",
        "sex" : "男",
        "age" : 35,
        "sal" : 8000,
        "loc" : "北京",
        "course" : [
                "語文",
                "政治"
        ]
}

此時的數(shù)據(jù)包含有數(shù)組內(nèi)容,而后需要針對數(shù)組數(shù)據(jù)進行判斷,可以使用幾個運算符:$all、$size、$slice、$elemMatch

范例:查詢同時參加語文和數(shù)學課程的人員
現(xiàn)在兩個數(shù)組內(nèi)容都需要保存,所以使用“{"$all",[內(nèi)容1,內(nèi)容2,...]}”
> db.emp.find({"course":{"$all":["語文","數(shù)學"]}}).pretty();
{
        "_id" : ObjectId("599129a00184ff511bf02b87"),
        "name" : "劉A",
        "sex" : "男",
        "age" : 35,
        "sal" : 8000,
        "loc" : "北京",
        "course" : [
                "語文",
                "數(shù)學",
                "英語",
                "音樂",
                "政治"
        ]
}
{
        "_id" : ObjectId("599129a00184ff511bf02b88"),
        "name" : "劉B",
        "sex" : "男",
        "age" : 35,
        "sal" : 8000,
        "loc" : "北京",
        "course" : [
                "語文",
                "數(shù)學"
        ]
}
{
        "_id" : ObjectId("599129a00184ff511bf02b89"),
        "name" : "劉C",
        "sex" : "男",
        "age" : 35,
        "sal" : 8000,
        "loc" : "北京",
        "course" : [
                "語文",
                "數(shù)學",
                "英語"
        ]
}
{
        "_id" : ObjectId("599129a00184ff511bf02b8a"),
        "name" : "劉D",
        "sex" : "男",
        "age" : 35,
        "sal" : 8000,
        "loc" : "北京",
        "course" : [
                "語文",
                "數(shù)學",
                "政治"
        ]
}
現(xiàn)在所有顯示的人員信息里面包含語文和數(shù)學的內(nèi)容。而如果差一個內(nèi)容的不會顯示。
雖然“$all”計算可以用于數(shù)組上,但是也可以用于一個數(shù)據(jù)的匹配上。

范例:查詢位置是“成都”的人員
> db.emp.find({"loc":{"$all":["成都"]}}).pretty();
{
        "_id" : ObjectId("599108423268c8e84253be2c"),
        "name" : "鄭七",
        "sex" : "女",
        "age" : 50,
        "sal" : 4700,
        "loc" : "成都"

既然在集合里面現(xiàn)在保存的是數(shù)組信息,那么數(shù)組就可以利用索引操作,使用“key.index”的方式來定義索引。

范例:查詢課程中第二個內(nèi)容(index=1,索引下標從0開始)為數(shù)學的信息
> db.emp.find({"course.1":"數(shù)學"}).pretty();
{
        "_id" : ObjectId("599129a00184ff511bf02b87"),
        "name" : "劉A",
        "sex" : "男",
        "age" : 35,
        "sal" : 8000,
        "loc" : "北京",
        "course" : [
                "語文",
                "數(shù)學",
                "英語",
                "音樂",
                "政治"
        ]
}
{
        "_id" : ObjectId("599129a00184ff511bf02b88"),
        "name" : "劉B",
        "sex" : "男",
        "age" : 35,
        "sal" : 8000,
        "loc" : "北京",
        "course" : [
                "語文",
                "數(shù)學"
        ]
}
{
        "_id" : ObjectId("599129a00184ff511bf02b89"),
        "name" : "劉C",
        "sex" : "男",
        "age" : 35,
        "sal" : 8000,
        "loc" : "北京",
        "course" : [
                "語文",
                "數(shù)學",
                "英語"
        ]
}
{
        "_id" : ObjectId("599129a00184ff511bf02b8a"),
        "name" : "劉D",
        "sex" : "男",
        "age" : 35,
        "sal" : 8000,
        "loc" : "北京",
        "course" : [
                "語文",
                "數(shù)學",
                "政治"
        ]
}

范例:要求查詢出只參加兩門課程的人員
使用“$size”來進行數(shù)量控制
> db.emp.find({"course":{"$size":2}}).pretty();
{
        "_id" : ObjectId("599129a00184ff511bf02b88"),
        "name" : "劉B",
        "sex" : "男",
        "age" : 35,
        "sal" : 8000,
        "loc" : "北京",
        "course" : [
                "語文",
                "數(shù)學"
        ]
}
{
        "_id" : ObjectId("599129a20184ff511bf02b8b"),
        "name" : "劉E",
        "sex" : "男",
        "age" : 35,
        "sal" : 8000,
        "loc" : "北京",
        "course" : [
                "語文",
                "政治"
        ]
}

發(fā)現(xiàn)在進行數(shù)據(jù)查詢的時候,只要內(nèi)容符合條件,數(shù)組的內(nèi)容就全備顯示出來,希望控制返回的數(shù)量,可以使用“$slice”進行控制。

范例:返回年齡為35歲的所有人員,但是要求只顯示兩門參加的課程
> db.emp.find({"age":35},{"course":{"$slice":2}}).pretty();
{
        "_id" : ObjectId("599108433268c8e84253be2d"),
        "name" : "王八",
        "sex" : "男",
        "age" : 35,
        "sal" : 8000,
        "loc" : "北京"
}
{
        "_id" : ObjectId("599129a00184ff511bf02b87"),
        "name" : "劉A",
        "sex" : "男",
        "age" : 35,
        "sal" : 8000,
        "loc" : "北京",
        "course" : [
                "語文",
                "數(shù)學"
        ]
}
{
        "_id" : ObjectId("599129a00184ff511bf02b88"),
        "name" : "劉B",
        "sex" : "男",
        "age" : 35,
        "sal" : 8000,
        "loc" : "北京",
        "course" : [
                "語文",
                "數(shù)學"
        ]
}
{
        "_id" : ObjectId("599129a00184ff511bf02b89"),
        "name" : "劉C",
        "sex" : "男",
        "age" : 35,
        "sal" : 8000,
        "loc" : "北京",
        "course" : [
                "語文",
                "數(shù)學"
        ]
}
{
        "_id" : ObjectId("599129a00184ff511bf02b8a"),
        "name" : "劉D",
        "sex" : "男",
        "age" : 35,
        "sal" : 8000,
        "loc" : "北京",
        "course" : [
                "語文",
                "數(shù)學"
        ]
}
{
        "_id" : ObjectId("599129a20184ff511bf02b8b"),
        "name" : "劉E",
        "sex" : "男",
        "age" : 35,
        "sal" : 8000,
        "loc" : "北京",
        "course" : [
                "語文",
                "政治"
        ]
}
現(xiàn)在只取得了前兩門的信息,那么也可以設置負數(shù)取出后兩門信息。
> db.emp.find({"age":35},{"course":{"$slice":-2}}).pretty();
{
        "_id" : ObjectId("599108433268c8e84253be2d"),
        "name" : "王八",
        "sex" : "男",
        "age" : 35,
        "sal" : 8000,
        "loc" : "北京"
}
{
        "_id" : ObjectId("599129a00184ff511bf02b87"),
        "name" : "劉A",
        "sex" : "男",
        "age" : 35,
        "sal" : 8000,
        "loc" : "北京",
        "course" : [
                "音樂",
                "政治"
        ]
}
{
        "_id" : ObjectId("599129a00184ff511bf02b88"),
        "name" : "劉B",
        "sex" : "男",
        "age" : 35,
        "sal" : 8000,
        "loc" : "北京",
        "course" : [
                "語文",
                "數(shù)學"
        ]
}
{
        "_id" : ObjectId("599129a00184ff511bf02b89"),
        "name" : "劉C",
        "sex" : "男",
        "age" : 35,
        "sal" : 8000,
        "loc" : "北京",
        "course" : [
                "數(shù)學",
                "英語"
        ]
}
{
        "_id" : ObjectId("599129a00184ff511bf02b8a"),
        "name" : "劉D",
        "sex" : "男",
        "age" : 35,
        "sal" : 8000,
        "loc" : "北京",
        "course" : [
                "數(shù)學",
                "政治"
        ]
}
{
        "_id" : ObjectId("599129a20184ff511bf02b8b"),
        "name" : "劉E",
        "sex" : "男",
        "age" : 35,
        "sal" : 8000,
        "loc" : "北京",
        "course" : [
                "語文",
                "政治"
        ]
}
或者只是取出中間部分的信息。
> db.emp.find({"age":35},{"course":{"$slice":[1,2]}}).pretty();
{
        "_id" : ObjectId("599108433268c8e84253be2d"),
        "name" : "王八",
        "sex" : "男",
        "age" : 35,
        "sal" : 8000,
        "loc" : "北京"
}
{
        "_id" : ObjectId("599129a00184ff511bf02b87"),
        "name" : "劉A",
        "sex" : "男",
        "age" : 35,
        "sal" : 8000,
        "loc" : "北京",
        "course" : [
                "數(shù)學",
                "英語"
        ]
}
{
        "_id" : ObjectId("599129a00184ff511bf02b88"),
        "name" : "劉B",
        "sex" : "男",
        "age" : 35,
        "sal" : 8000,
        "loc" : "北京",
        "course" : [
                "數(shù)學"
        ]
}
{
        "_id" : ObjectId("599129a00184ff511bf02b89"),
        "name" : "劉C",
        "sex" : "男",
        "age" : 35,
        "sal" : 8000,
        "loc" : "北京",
        "course" : [
                "數(shù)學",
                "英語"
        ]
}
{
        "_id" : ObjectId("599129a00184ff511bf02b8a"),
        "name" : "劉D",
        "sex" : "男",
        "age" : 35,
        "sal" : 8000,
        "loc" : "北京",
        "course" : [
                "數(shù)學",
                "政治"
        ]
}
{
        "_id" : ObjectId("599129a20184ff511bf02b8b"),
        "name" : "劉E",
        "sex" : "男",
        "age" : 35,
        "sal" : 8000,
        "loc" : "北京",
        "course" : [
                "政治"
        ]
}
在此時設置的兩個數(shù)據(jù)里面,第一個數(shù)據(jù)表示開始的位置,第二個數(shù)據(jù)表示個數(shù)。

網(wǎng)頁標題:MongoDB之數(shù)據(jù)查詢(數(shù)組)
瀏覽地址:http://aaarwkj.com/article30/igdjso.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供面包屑導航、網(wǎng)站營銷、域名注冊、Google服務器托管、企業(yè)建站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站制作
亚洲精品在线播放av| 亚洲精品色播一区二区| 国产精品自偷自偷自偷| 国产女主播精品视频一区| 亚洲日本欧洲二区精品| 精品国产一区二区三区大| 成年黄网站免费视频大全| 国产亚洲成人精品一区| 国产成人国产精品国产三级| 精品国产一区亚洲二区| 东京热男人的av天堂| 国产免费av剧情演绎| 97国产成人精品视频免费| 国产午夜福利视频合集| 一区二区日韩视频九一蜜桃| 精品久久精品久久人妻九色| 国产黄色av网站在线| 尤物视频最新在线观看| 亚洲熟女内射特写一区| 色综合久久综合香梨网| 中文字幕午夜av福利| 亚洲国产成人不卡高清麻豆| 亚洲一区二区视频精品| 亚洲美腿丝袜综合在线| 国产又粗又长在线视频| 国产一区黄片视频在线观看| 91久久国产香蕉熟女| 亚洲人妻av一区二区| 国产福利午夜一区二区| 欧美黄色日本一区二区| 国产精品伦理一区二区三区| 黄片在线免费观看欧美中文| 中午字幕人妻少妇久久| 亚洲精品在线观看毛片| 大秀视频一区二区三区| 国产我和子的乱视频亲生| 国产传媒网约在线观看| 亚洲国产综合六月深深爱| 人妻中字幕出轨中文字幕| 日本一区二区中文字幕在线| 久久久亚洲成人国产av|