zoukankan      html  css  js  c++  java
  • mongodb "$"的作用

    {
        "_id": ObjectId("58e48e32830f398e8f401a95"),
        "_class": "com.ydd.model.mongdb.WeiXinQuestion",
        "openid": "oDVO_w2juwMejm7S-UxfLaSOC0kU21",
        "createtime": NumberLong(1491373618008),
        "endtime": NumberLong(0),
        "antotal": NumberLong(2),
        "content": "asdfasdfasdfasdfasdf",
        "status": 0,
        "isshow": 1,
        "address": "",
        "sex": 0,
        "labels": "气血两虚",
        "besttotal": 0,
        "bestscore": 0,
        "clerkAnswer": [
            {
                "_id": "p0k94bZ4EHV9XsftlMlOzHS8L",
                "clerkId": 2159,
                "headerimg": "head/2159/201612/1480922352820.jpeg",
                "name": "药点点店长7",
                "content": "高难度",
                "createtime": NumberLong(1491373686025),
                "adopt": 0,
                "score": 0,
                "zan": 0,
                "ids": [
                    
                ],
                "clerkAnswerScore": [
                    
                ],
                "qid": "58e48e32830f398e8f401a95",
                "status": 0,
                "isReward": 0,
                "replayAnswers": [
                    
                ]
            },
            {
                "_id": "GkJtDMB7uizt699qFyEhAINZ0",
                "clerkId": 2166,
                "headerimg": "head/2166/201701/1484742330434.jpeg",
                "name": "药点店员13",
                "content": "但",
                "createtime": NumberLong(1491373800122),
                "adopt": 0,
                "score": 0,
                "zan": 0,
                "ids": [
                    
                ],
                "clerkAnswerScore": [
                    
                ],
                "qid": "58e48e32830f398e8f401a95",
                "status": 0,
                "isReward": 0,
                "replayAnswers": [
                    
                ]
            },
            {
                "_id": ObjectId("58b5b0eead349879b2871348"),
                "answerId": "L7izf6lVoyY9QyERd0m2",
                "clerkId": 4625,
                "headerimg": "/resource/2016/8/26/c160c426-a.jpeg",
                "name": "林建丽",
                "content": "合生元益生菌",
                "createtime": NumberLong(1488302318220),
                "adopt": 0,
                "score": 0,
                "zan": 0,
                "ids": [
                    
                ],
                "clerkAnswerScore": [
                    
                ],
                "qid": "58e48e32830f398e8f401a95",
                "status": 0,
                "isReward": 0,
                "replayAnswers": [
                    
                ]
            }
        ]
    }

    当要只查询clerkAnswer这个数组中的某条数据时可以这样查find({"clerkAnswer._id":"GkJtDMB7uizt699qFyEhAINZ0"},{"clerkAnswer.$":{$slice:1}}) ,如果你在<查询条件>中查询的内容是array里的内容,用$就能引用前查询中匹配到的元素。所以不需要遍历就能直接取到数组中的某一个对象。如果把clerkAnswer.$改为clerkAnswer,查询到的就是三条记录中的第一条了,而不是前边指定的那条,当然如果你前边的查询条件没有具体包含到数组里的数据比如你是这样查的 find({"_id":ObjectId("58e48e32830f398e8f401a95")},{"clerkAnswer.$":{$slice:1}})这样就查不到clerkAnswer中指定的某条了

    
    
  • 相关阅读:
    2020年Android面试题含答案
    flutter系列(一)----- 开发环境搭建
    Android应用安全防护和逆向分析 ——apk混淆成其他语言代码
    Android应用安全防护和逆向分析 ——apk反编译
    Android中 TextView 加载 混合字符 自动换行解决方案
    H5跳转app本地的规则定义
    Android ListView 九大重要属性详细分析
    ListView和ScrollView滑动到顶部
    简要的汇总Android
    关于ViewPager+Fragment中Fragment不销毁/生命周期
  • 原文地址:https://www.cnblogs.com/akaneblog/p/6888508.html
Copyright © 2011-2022 走看看