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