如何找到MongoDB?Javascript
如何使用以下收集数据在mongodb中进行嵌套查找:如何找到MongoDB?Javascript,javascript,mongodb,Javascript,Mongodb,如何使用以下收集数据在mongodb中进行嵌套查找: { "_id": { "$oid": "585b998297f53460d5f760e6" }, "newspaper": { "playerID": "57bffe76b6a70d6e2a3855b7", "playerUsername": "dennis", "player_newspaper": "{\"ID\":\"57bffe76b6a70d6e2a3855b7\",\"Username\":\"Dennis\
{
"_id": {
"$oid": "585b998297f53460d5f760e6"
},
"newspaper": {
"playerID": "57bffe76b6a70d6e2a3855b7",
"playerUsername": "dennis",
"player_newspaper": "{\"ID\":\"57bffe76b6a70d6e2a3855b7\",\"Username\":\"Dennis\",\"itemName\":\"Corn\",\"Comment\":\"Jagung Promo\",\"Date\":\"12/27/2016\"}"
}
}
我的代码:
var datex = new Date();
var dates = datex.getMonth() + '/' + datex.getDate() + '/' + datex.getFullYear();
db.playerNewspaper.remove( {"newspaper.player_newspaper.Date": dates } } } ) ;
这是行不通的
及
我就是这样插入数据的:
var currentPlayer = {
"playerID": playerID,
"playerUsername": playerUsername,
"player_newspaper": newspaper
}; // we construct a new player from the data we are about to input into the player data
playerDataList.insert(
{
"newspaper" : currentPlayer
} // Uses the $set mongo modifier to set old player data to the current player data
);
您的查询看起来不错,但数据中存在问题。根据您的查询条件,您假设
player\u-paper
是一个对象
,但您在那里显示的player\u-paper
数据是一个字符串
。因此,在您的查询“paper.player\u paper.Date”:Date
中未找到任何文档,这就是查询不起作用的原因
您的文档结构应如下所示:
{
"_id" : ObjectId("585b998297f53460d5f760e6"),
"newspaper" : {
"playerID" : "57bffe76b6a70d6e2a3855b7",
"playerUsername" : "dennis",
"player_newspaper" : {
"ID" : "57bffe76b6a70d6e2a3855b7",
"Username" : "Dennis",
"itemName" : "Corn",
"Comment" : "Jagung Promo",
"Date" : "12/27/2016"
}
}
}
那么您的查询就可以正常工作了
var datex = new Date();
var dates = datex.getMonth() + '/' + datex.getDate() + '/' + datex.getFullYear();
db.playerNewspaper.remove( {"newspaper.player_newspaper.Date": dates } } } ) ;
您的查询看起来不错,但数据中存在问题。根据您的查询条件,您假设
player\u-paper
是一个对象
,但您在那里显示的player\u-paper
数据是一个字符串
。因此,在您的查询“paper.player\u paper.Date”:Date
中未找到任何文档,这就是查询不起作用的原因
您的文档结构应如下所示:
{
"_id" : ObjectId("585b998297f53460d5f760e6"),
"newspaper" : {
"playerID" : "57bffe76b6a70d6e2a3855b7",
"playerUsername" : "dennis",
"player_newspaper" : {
"ID" : "57bffe76b6a70d6e2a3855b7",
"Username" : "Dennis",
"itemName" : "Corn",
"Comment" : "Jagung Promo",
"Date" : "12/27/2016"
}
}
}
那么您的查询就可以正常工作了
var datex = new Date();
var dates = datex.getMonth() + '/' + datex.getDate() + '/' + datex.getFullYear();
db.playerNewspaper.remove( {"newspaper.player_newspaper.Date": dates } } } ) ;
嗨@Shaisb,如果数据和我的一样,那么查询会是什么样子呢?我认为你应该改变你的数据结构。这不是一个有效的结构,或者很遗憾,您在更新或添加时这样做了@DennisLiuSo如何插入类似于您的结构的数据?如何在
“player\u paper”:paper
中获取newpaper
?检查结构“player_paper”:paper该paper是一个类,我将其转换为json字符串。Hi@shaisb,那么如果数据与我的类似,那么查询将是什么样子?好吧,我认为您应该更改数据结构。这不是一个有效的结构,或者很遗憾,您在更新或添加时这样做了@DennisLiuSo如何插入类似于您的结构的数据?如何在“player\u paper”:paper
中获取newpaper
?检查结构“player_paper”:该报纸是我转换为json字符串的类。