繁体   English   中英

如何将 MYSQL 查询转换为 Mongodb 聚合

[英]How to Convert MYSQL Query to Mongodb Aggregation

如何将 mysql 查询转换为 mongodb 聚合

我的数据库在 mysql

在此处输入图像描述

我需要将 mysql 转换为 mongodb 查询

SELECT * FROM `auctions` WHERE ( (status!='SCHEDULED' AND status='FAILED') OR (status!='RUNNING' AND status='FAILED') ) GROUP BY auctioncode

在这个查询中auctioncode 和status 是wise record 需要的auctioncode 是多条记录。 我需要 status='FAILED' 拍卖代码状态不在SCHEDULEDUNPAID

可以完成类似下面的操作,请参考此处的示例查询: https://mongoplayground.net/p/8zHYhXvbkxs

db.auctions.aggregate([
  {
    "$match": {
      "$or": [
        {
          "$and": [
            {
              status: {
                $ne: "SCHEDULED"
              }
            },
            {
              status: "FAILED"
            }
          ]
        },
        {
          "$and": [
            {
              status: {
                $ne: "RUNNING"
              }
            },
            {
              status: "FAILED"
            }
          ]
        }
      ]
    }
  },
  {
    "$group": {
      "_id": "$auctioncode",
      "auctioncode": {
        "$first": "$auctioncode"
      },
      "Details": {
        "$addToSet": "$$ROOT"
      }
    }
  }
])

管道阶段:匹配:根据您的要求进行过滤:组:按拍卖代码进行分组

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM