Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/go/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mongodb 如何将字符串转换为BSON_Mongodb_Go_Mongodb Query_Bson - Fatal编程技术网

Mongodb 如何将字符串转换为BSON

Mongodb 如何将字符串转换为BSON,mongodb,go,mongodb-query,bson,Mongodb,Go,Mongodb Query,Bson,我想将字符串转换为BSON Obj以执行mongodb聚合操作。所有查询都将存储在某处,现在我们必须将字符串转换为BSON操作并显示结果 比方说 var str = `[{"$match":{"tenantId":"TenantOne"}},{"$group":{"_id":{"referralType":"$referralType"},"value":{"$sum":1}}}]` 我得改信仰 var bsonobj = bson.A{ bson.D{{ Key: "$match

我想将字符串转换为BSON Obj以执行mongodb聚合操作。所有查询都将存储在某处,现在我们必须将字符串转换为BSON操作并显示结果

比方说

var str = `[{"$match":{"tenantId":"TenantOne"}},{"$group":{"_id":{"referralType":"$referralType"},"value":{"$sum":1}}}]`
我得改信仰

var bsonobj = bson.A{
  bson.D{{
    Key: "$match", Value : bson.D{{
      Key : "tenantId" : Value: "TenantOne"
    }}
  }},
  bson.D{{
    Key: "$group", Value : bson.D{{
      Key : "_id" : Value: bson.D{{
        Key : "referralType" : Value: "$referralType"
      }},
      Key : "value" : Value: bson.D{{
        Key : "$sum" : Value: 1
      }}

    }}
  }}
}
我试过了!我不能正确使用它。

试试这个:

    var str = `[{"$match":{"tenantId":"TenantOne"}},{"$group":{"_id":{"referralType":"$referralType"},"value":{"$sum":1}}}]`
fmt.Println(str)
var bdoc interface{}
err := bson.UnmarshalExtJSON([]byte(str),true,&bdoc)
fmt.Println(bdoc)
fmt.Println(err)
试试这个:

    var str = `[{"$match":{"tenantId":"TenantOne"}},{"$group":{"_id":{"referralType":"$referralType"},"value":{"$sum":1}}}]`
fmt.Println(str)
var bdoc interface{}
err := bson.UnmarshalExtJSON([]byte(str),true,&bdoc)
fmt.Println(bdoc)
fmt.Println(err)

你为什么要拆封它?使用来执行它。您可以将
bsonobj
传递给它。我无法将字符串传递给Aggregate,为什么要将其解组?使用来执行它。您可以将
bsonobj
传递给它。我无法将字符串传递给聚合