0
17
14
14
为了账号安全,请及时绑定邮箱和手机立即绑定

如何表示具有混合类型的数组

如何表示具有混合类型的数组

Go
12345678_0001 2021-06-01 05:37:14
我正在使用$substr来自 MongoDB的命令构建聚合管道查询,但我不知道如何使用 mgo 驱动程序表示它在 Go 中所需的数组,因为它包含不同类型的值(字符串、整数)。这是javascript中的查询:[ {$group: {"_id": {"dt": {"$substr": ["$dt",0,6]}}}} ]它试图做的是获取dt(来自聚合的前一阶段)的子字符串,起始索引为 0,结束索引为 6。在 Go 中,我得到了:[]bson.M{"$group": bson.M{"_id": bson.M{"dt": bson.M{"$substr": ["$dt",0,6]}}}}}但["$dt",0,6]不是正确的表示,我尝试的一切似乎都失败了。

1 回答

?
慕的地10843

TA贡献1785条经验 获得超8个赞

您可以使用类型切片来表示这些值[]interface{}:


    l := []interface{}{"$dt", 0, 6}

如果你觉得语法有点脏,你可以很容易地定义一个本地类型,让它看起来更好:


    type list []interface{}

    l := list{"$dt", 0, 6}


查看完整回答
反对 回复 2021-06-28

添加回答

代码语言

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号