Meteor学习路程(三)之数据库的例子(3)【查询】

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Miss_LL/article/details/54573574

这个例子插入的例子是在http://blog.csdn.net/miss_ll/article/details/54573400数据库基础进行继续完善的,数据库中存在着三条数据。


查询的方式:

(1)条件查询

修改数据库helper,我这里是testsusers.js

Template.testsusers.helpers({
    testsusers:function () {
        //1.条件查询
        var clt = null;
        clt = TestsUsers.find({name:'name4'});
        return clt;
    }
});

相当于select * from tests where name='name4';

展示结果:


(2)查询符合条件的第一条记录

修改数据库helper,我这里是testsusers.js

Template.testsusers.helpers({
    testsusers:function () {
        var clt = null;
        //2.查询提条记录
        clt = TestsUsers.findOne({name:'name3'});
        return clt;
    }
});

发现报错了,这是因为findOne()返回的是Object类型,不适用于模板中each循环

(3)模糊查询

修改数据库helper,我这里是testsusers.js

Template.testsusers.helpers({
    testsusers:function () {
        var clt = null;
        //3.模糊查询
        clt = TestsUsers.find({name:/^n/});
        return clt;
    }
});

相当于select * from tests where name like 'n%';

这样数据库中所有n开头的name就都输出了
(4)或查询(指定多个查询条件,查找集合中所有满足其中任何一个条件的记录就是或查询)

修改数据库helper,我这里是testsusers.js

Template.testsusers.helpers({
    testsusers:function () {
        var clt = null;
        //4.或查询
        clt = TestsUsers.find({$or:[{name:/^n/},{age:{$gt:20}}]});
        return clt;
    }
});

很奇怪为啥明明有三条数据,但是还是查出这两个是不,在仔细看看呢


猜你喜欢

转载自blog.csdn.net/Miss_LL/article/details/54573574
今日推荐