开发者社区> 问答> 正文

MongoDB查询 能不能为字段起别名??

问题:MongoDB查询可以用别名吗?

mysql 查询可以这样写:

select student_name as sname from table
sname 是字段 student_name 的别名

那么,强大的MongoDB有别名的用法吗?网上没有查到,向大家求助

本问题及下方已被采纳的回答均来自云栖社区【Redis&MongoDB 社区大群】。https://yq.aliyun.com/articles/690084 点击链接欢迎加入社区大社群。

展开
收起
李博 bluemind 2019-04-09 13:22:51 7474 0
1 条回答
写回答
取消 提交回答
  • 云栖社区Java、Redis、MongoDB运营小编,有意合作请联系钉钉:15810436147

    可以的,将投射过的字段在结果中重命名:
    原始数据:

    db.zipcode.find()
    { "_id" : "01001", "city" : "AGAWAM", "loc" : [ -72.622739, 42.070206 ], "pop" : 15338, "state" : "MA" }

    { "_id" : "01002", "city" : "AGAWAM", "loc" : [ -72.51565, 42.377017 ], "pop" : 36963, "state" : "MA" }
    { "_id" : "01005", "city" : "AGAWAM", "loc" : [ -72.108354, 42.409698 ], "pop" : 4546, "state" : "MA" }
    { "_id" : "01007", "city" : "BELCHERTOWN", "loc" : [ -72.410953, 42.275103 ], "pop" : 10579, "state" : "MA" }
    { "_id" : "01008", "city" : "BLANDFORD", "loc" : [ -72.936114, 42.182949 ], "pop" : 1240, "state" : "MA" }
    显示原字段和重命名字段名称:

    db.zipcode.aggregate({$project:{myid:"$_id"}})

    { "_id" : "01001", "myid" : "01001" }
    { "_id" : "01002", "myid" : "01002" }
    { "_id" : "01005", "myid" : "01005" }
    { "_id" : "01007", "myid" : "01007" }
    { "_id" : "01008", "myid" : "01008" }
    只显示重命名字段名称:

    db.zipcode.aggregate({$project:{myid:"$_id",_id:0}})

    { "myid" : "01001" }
    { "myid" : "01002" }
    { "myid" : "01005" }
    { "myid" : "01007" }
    { "myid" : "01008" }

    2019-07-17 23:32:57
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
MongoDB多数据中心的方案选型之路 立即下载
阿里云MongoDB云服务构建 立即下载
饿了么高级架构师陈东明:MongoDB是如何逐步提高可靠性的 立即下载