17

MySQL查询的mongodb等价物是什么

SELECT username AS  `consname` FROM  `consumer`
4

2 回答 2

20

正如 sammaye 所提到的,您必须在聚合框架中使用$project来重命名字段。

因此,在您的情况下,它将是:

db.consumer.aggregate([
    { "$project": {
        "_id": 0,
        "consname": "$username"
    }}
])

很酷的是,在 2.6.x 版本中,聚合返回一个游标,这意味着它的行为类似于 find。

您还可以查看$rename运算符来永久更改架构。

于 2014-05-21T21:51:01.237 回答
-1

Salvador Dali 的回答很好,但不能在 3.0 之前的流星版本中工作。我目前正在尝试流星,他们在 mongodb 中的构建是版本 2。我解决这个问题的方式是这样的:

var result = []:
db.consumer.forEach( function(doc) {
   result.push({
     consname:doc.username
   });
});
于 2015-10-09T07:03:23.863 回答