Navicat中mongo按照条件简单查询修改排序

用Navicat Premium 连接mongo后,想要做简单的查询和排序,数据集合名称叫trade,结构 ,

文档结构如下:

{
    "_id": "O201908221531130339",
    "_class": "com.wanmi.sbc.order.trade.model.root.Trade",
    "buyer": {
        "_id": "8a9bc76c617564e5016179d8545b0005",
        "name": "测试",
        "account": "139****2650",
        "levelId": NumberLong("211"),
        "levelName": "LV3",
        "customerFlag": true,
        "phone": "13952012650",
        "employeeId": "8a9bc76c63ec90520164263daeba0039"
    },
    "supplier": {
        "supplierCode": "S00001",
        "supplierName": "上海能科技有限公司",
        "supplierId": NumberLong("3"),
        "storeId": NumberLong("123456857"),
        "freightTemplateType": "NO",
        "storeName": "马小修",
        "isSelf": true
    },
    "buyerRemark": "",
    "encloses": "",
    "requestIp": "172.19.6.72",
    "invoice": {
        "type": NumberInt("-1"),
        "generalInvoice": { },
        "specialInvoice": {
            "_id": null
        },
        "addressId": "8a9bc76c617564e5016179d9bb430007",
        "sperator": false,
        "address": "北京市东城区23213123",
        "projectId": "",
        "projectName": "",
        "taxNo": ""
    },
    "tradeState": {
        "auditState": "CHECKED",
        "flowState": "VOID",
        "payState": "NOT_PAID",
        "deliverStatus": "NOT_YET_SHIPPED",
        "createTime": ISODate("2019-08-22T07:31:14.114Z"),
        "endTime": ISODate("2019-10-09T03:45:04.643Z"),
        "obsoleteReason": "订单超时未支付,系统自动取消"
    },
    "consignee": {
        "_id": "8a9bc76c617564e5016179d9bb430007",
        "provinceId": NumberLong("110000"),
        "cityId": NumberLong("110100"),
        "areaId": NumberLong("110101"),
        "address": "23213123",
        "detailAddress": "北京市东城区23213123",
        "name": "123123",
        "phone": "13132131232"
    },
    "tradePrice": {
        "goodsPrice": "1.70",
        "deliveryPrice": "0.00",
        "discountsPrice": "0",
        "special": false,
        "enableDeliveryPrice": false,
        "originPrice": "1.70",
        "totalPrice": "1.70",
        "discountsPriceDetails": [ ],
        "couponPrice": "0",
        "smallShopCouponPrice": "0"
    },
    "tradeItems": [
        {
            "oid": "OD201908221531138932",
            "adminId": "1",
            "storeId": NumberLong("123456857"),
            "spuId": "8a9bc76c616e5d1101616fe4b66b00c3",
            "spuName": "厂家批发一级小麦米散装小麦五谷杂粮现磨豆浆原料小麦仁批发",
            "skuId": "8a9bc76c616e5d1101616fe4b67000c4",
            "skuName": "厂家批发一级小麦米散装小麦五谷杂粮现磨豆浆原料小麦仁批发",
            "skuNo": "8000633464",
            "goodsWeight": "0.001",
            "goodsCubage": "0.000001",
            "freightTempId": NumberLong("61"),
            "cateId": NumberLong("580"),
            "cateName": "大米",
            "pic": "https://wanmi-b2b.oss-cn-shanghai.aliyuncs.com/201802071849420703",
            "num": NumberLong("1"),
            "deliveredNum": NumberLong("0"),
            "deliverStatus": "NOT_YET_SHIPPED",
            "unit": "kg",
            "price": "1.70",
            "originalPrice": "2.00",
            "levelPrice": "1.70",
            "splitPrice": "1.70",
            "specDetails": "散装每编织袋约50kg",
            "cateRate": "6.00",
            "distributionGoodsAudit": "COMMON_GOODS",
            "distributionCommission": "0.10",
            "commissionRate": "0.05",
            "marketingIds": [ ],
            "couponSettlements": [ ],
            "smallShopCouponSettlement": [ ],
            "goodsEvaluateStatus": "NO_EVALUATE",
            "isHaveCouponCode": false
        },
        {
            "oid": "OD201908221531138932",
            "adminId": "1",
            "storeId": NumberLong("123456857"),
            "spuId": "8a9bc76c616e5d1101616fe4b66b00c3",
            "spuName": "厂家批发一级小麦米散装小麦五谷杂粮现磨豆浆原料小麦仁批发",
            "skuId": "8a9bc76c616e5d1101616fe4b67000c4",
            "skuName": "厂家批发一级小麦米散装小麦五谷杂粮现磨豆浆原料小麦仁批发",
            "skuNo": "8000633464",
            "goodsWeight": "0.001",
            "goodsCubage": "0.000001",
            "freightTempId": NumberLong("61"),
            "cateId": NumberLong("580"),
            "cateName": "大米",
            "pic": "https://wanmi-b2b.oss-cn-shanghai.aliyuncs.com/201802071849420703",
            "num": NumberLong("1"),
            "deliveredNum": NumberLong("0"),
            "deliverStatus": "NOT_YET_SHIPPED",
            "unit": "kg",
            "price": "1.70",
            "originalPrice": "2.00",
            "levelPrice": "1.70",
            "splitPrice": "1.70",
            "specDetails": "散装每编织袋约50kg",
            "cateRate": "6.00",
            "distributionGoodsAudit": "COMMON_GOODS",
            "distributionCommission": "0.10",
            "commissionRate": "0.05",
            "marketingIds": [ ],
            "couponSettlements": [ ],
            "smallShopCouponSettlement": [ ],
            "goodsEvaluateStatus": "NO_EVALUATE",
            "isHaveCouponCode": false
        }
    ],
    "tradeDelivers": [ ],
    "deliverWay": "EXPRESS",
    "payInfo": {
        "payTypeId": "0",
        "payTypeName": "ONLINE",
        "desc": "在线支付",
        "isMergePay": false
    },
    "payOrderId": "ff8080816bf8e43b016cb83c966c0000",
    "platform": "CUSTOMER",
    "isAuditOpen": false,
    "paymentOrder": "PAY_FIRST",
    "orderTimeOut": ISODate("2019-08-22T08:31:14.189Z"),
    "tradeEventLogs": [
        {
            "operator": {
                "platform": "PLATFORM",
                "name": "system",
                "ip": "127.0.0.1",
                "account": "system"
            },
            "eventType": "已作废",
            "eventDetail": "[system]作废了订单O201908221531130339",
            "eventTime": ISODate("2019-10-09T03:45:04.644Z")
        },
        {
            "operator": {
                "platform": "CUSTOMER",
                "name": "测试",
                "adminId": "",
                "userId": "8a9bc76c617564e5016179d8545b0005",
                "ip": "172.19.6.72",
                "account": "13952012650"
            },
            "eventType": "创建订单",
            "eventDetail": "创建订单",
            "eventTime": ISODate("2019-08-22T07:31:14.382Z")
        }
    ],
    "channelType": "MALL",
    "shopName": "店铺",
    "storeBagsFlag": "NO",
    "distributeItems": [ ],
    "commission": "0",
    "totalCommission": "0",
    "commissions": [ ],
    "commissionFlag": false,
    "returnOrderNum": NumberInt("0"),
    "canReturnFlag": false,
    "canBilling": false,
    "tradeMarketings": [ ],
    "gifts": [ ],
    "orderSource": "APP",
    "orderEvaluateStatus": "NO_EVALUATE",
    "storeEvaluate": "NO_EVALUATE",
    "grouponFlag": false,
    "orderMedicineType": "NON_MEDICINE"
}

点击新建查询,输入语句。

1.查询订单是O201908221531130339的订单

db.getCollection("trade").find({"_id":"O201908221531130339"});

2.查询订单状态为COMPLETED的订单

db.getCollection("trade").find({"tradeState.flowState":"COMPLETED"});

3.按照订单创建时间排序-1,降序,1升序

db.getCollection("trade").find({}).sort({"tradeState.createTime":1})

4.订单号in查询

db.getCollection("trade").find({"_id":{
  $in: [
'O202101031113423152644',
'O202101031114155541106',
'O202101031114580551921',
'O202101031115150288368',
'O202101031118158289643',
'O202101031118299869986',
'O202101031120117733496',
'O202101031120509988512',
'O202101031121071803228',
'O202101031145345242422',
'O202101031145583010515',
'O202101031146234638161'
]}
});

5订单批量更新某字段

db.trade.update({

    '_id': {

        $in: [

'O202101031113423152644',
'O202101031114155541106',
'O202101031114580551921',
'O202101031115150288368',
'O202101031118158289643',
'O202101031118299869986',
'O202101031120117733496',
'O202101031120509988512',
'O202101031121071803228',
'O202101031145345242422',
'O202101031145583010515',
'O202101031146234638161'

]

    }

},{

    "$set": {

        "tradeState.flowState": "AUDIT",
         "tradeState.payState": "PAID",
        "tradeState.obsoleteReason":''

    }

},{multi:true})
6.查询oplog中的日志

db.oplog.rs.find({ns:"s2b.trade","o._id":{$in: ["O202101080956556531458"]}})

注:本文就是简单应用,复杂的查询参考官方文档。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
mongoTemplate是Spring Data MongoDB提供的一个操作MongoDB数据库的工具类。它提供了一系列的方法来执行数据库的增删改查操作。 在mongoTemplate进行模糊查询,可以使用正则表达式来匹配需要查询的字段。具体步骤如下: 1. 创建一个Query对象,用于设置查询条件。 2. 使用Criteria对象设置模糊查询条件,可以使用正则表达式来匹配需要查询的字段。 3. 调用mongoTemplate的find方法,传入Query对象和需要查询的实体类,执行查询操作。 下面是一个示例代码,演示如何在mongoTemplate进行模糊查询: ```java import org.springframework.data.mongodb.core.MongoTemplate; import org.springframework.data.mongodb.core.query.Criteria; import org.springframework.data.mongodb.core.query.Query; public class MongoTemplateExample { private MongoTemplate mongoTemplate; public List<User> findUsersByKeyword(String keyword) { Query query = new Query(); Criteria criteria = Criteria.where("name").regex(keyword, "i"); // i表示不区分大小写 query.addCriteria(criteria); return mongoTemplate.find(query, User.class); } } ``` 在上述示例,我们通过`Criteria.where("name").regex(keyword, "i")`设置了一个模糊查询条件,其"name"是需要查询的字段名,`regex(keyword, "i")`表示使用正则表达式进行匹配,"i"表示不区分大小写。 你可以根据自己的需求修改上述代码,来实现更复杂的模糊查询操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值