我在家庭作业中有一个问题。
假设每个演员都可以在多部电影中工作。我们希望将每个actor的电影名称记录为每个actor的文档中的嵌入式数组。 修改以下插入查询以将以下电影添加为数组:Pie of Life,Madagascar和Hunger Games。
db.actor.insert({
first: 'matthew',
last: 'setter',
dob: '21/04/1978',
gender: 'm',
hair_colour: 'brown',
occupation: 'developer',
nationality: 'australian',
height_cm: 185
});
我认为这就像在代码中添加这一行一样简单:
movies: ["Life of Pie", "Madagascar", "Hunger Games"]
但很明显,事情并非如此简单。我试图找到插入数组的语法和示例,但没有运气。
答案 0 :(得分:0)
根据mongodb
文档,您有正确的想法:
http://docs.mongodb.org/manual/core/document/
他们给出的例子是:
var mydoc = {
_id: ObjectId("5099803df3f4948bd2f98391"),
name: { first: "Alan", last: "Turing" },
birth: new Date('Jun 23, 1912'),
death: new Date('Jun 07, 1954'),
contribs: [ "Turing machine", "Turing test", "Turingery" ],
views : NumberLong(1250000)
}
所以,你可能只是在height_cm: 185
之后错过了一个逗号:
db.actor.insert({
first: 'matthew',
last: 'setter',
dob: '21/04/1978',
gender: 'm',
hair_colour: 'brown',
occupation: 'developer',
nationality: 'australian',
height_cm: 185,
movies: ["Life of Pie", "Madagascar", "Hunger Games"]
});