亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

mongodb查詢 能不能為字段起別名??

mongodb查詢 能不能為字段起別名??

慕桂英4014372 2018-08-15 17:29:48
問題:mongodb 查詢可以用別名嗎?mysql 查詢可以這樣寫:select student_name as sname from tablesname 是字段 student_name 的別名那么,強大的mongodb有別名的用法嗎?網上沒有查到,向大家求助
查看完整描述

2 回答

?
斯蒂芬大帝

TA貢獻1827條經驗 獲得超8個贊

可以使用別名,不過要用
aggregate()進行查詢,并且,要把需要顯示的名稱全部列出來

你要將需要顯示的列,全部寫在
$project中

db.getCollection('discerns').aggregate([
{
   $project: {   
        'date': '$DateTime'
   }
}
]);

如果要起別名,對象的鍵就是別名,值就是實際的數據庫字段名(字段名要用$符號開頭,否則 mongodb 會將其解析為一個字符串)
_id會默認查詢出來,如果不想要 _id 查詢出來,需要手動設置 _id:0
除 _id外,其他字段值不設置,則不會查詢出來


查看完整回答
反對 回復 2018-08-26
?
智慧大石

TA貢獻1946條經驗 獲得超3個贊

可以的,將投射過的字段在結果中重命名:
原始數據:

> 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" }


查看完整回答
反對 回復 2018-08-26
  • 2 回答
  • 0 關注
  • 1576 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號