例如有这样一个数据库:
1 张三 男 24岁
2 李四 男 19岁
3 张三 女 22岁
如果你用findOne({name:”张三”})查询,返回的只会是第一个张三:
1 张三 男 24岁
如果用find({name:”张三”})查询的话,就会返回两个张三了:
1 张三 男 24岁
3 张三 女 22岁
第二个区别是,findOne()返回的是一个对象,而find()返回的是一个数组,数组里面装着对象。
两者看起来好像差不多,但findOne()返回的值前端只需要用data.name就能获取到,但find()返回的值前端要用data[i].name来获取。
mongoose中的三个概念
Schema: 数据库的模板,数据的构成以及规则,对不同的数据模型进行建模,所有数据类都要通过这个模板来形成真正的数据,然后存贮到数据库里面
Model: 具有操作数据的能力,crud
Entity:数据实例
关于数据查询语言: GraphQL restful
GraphQL: 由于前端数据需求总是变化的,graphQL可以将多个接口合并成一个,根据前端的需求给数据,数据调用前端决定
GraphQL语法:
query {
garden:{ // 接口名称
name:"huaer"
}
gardener:{
name:"zhangsan"
}
flower(number:"hauer",id:111){
issuse(number:111){
id:222
}
}
}