1.查询所有数据
- var Language= Bmob.Object.extend("language");
- var query = new Bmob.Query(Language);
- // 查询所有数据
- query.find({
- success: function(results) {
- console.log("总数:"+results.length);
- },
- error: function(error) {
- console.log("查询出错");
- }
- });
- 注意:默认情况下,并不会返回所有数据,只是查出前10条数据。可以通过setLimit来设置返回数据条数。
2.查询第一条数据
- var Language= Bmob.Object.extend("language");
- var query = new Bmob.Query(Language);
- // 查询所有数据
- query.first({
- success: function(object) {
- console.log(object.name);
- },
- error: function(error) {
- console.log("查询出错");
- }
- });
3.根据id查询
- var Language= Bmob.Object.extend("language");
- var query = new Bmob.Query(Language);
- // 根据id获取对象
- query.get('3453453453fdsdf', {
- success: function(result) {
- //do something
- },
- error: function(object, error) {
- console.log("查询出错");
- }
- });
4.条件查询
- query.equalTo(列名, 值); //等于
- query.notEqualTo(列名, 值); //不等于
- query.lessThan(列名, 值); //小于
- query.lessThanOrEqualTo(列名, 值); //小于等于
- query.greaterThan(列名, 值); //大于
- query.greaterThanOrEqualTo(列名, 值); //大于等于
- query.containedIn(列名, [值1, 值2, 值3,...]);//查询列值为数组中包含的值的集合
- query.exists(列名); //查询存在指定的列属性的对象
- query.doesNotExist(列名); //查询不存在指定的列属性的对象
- query.select(列名); //查询指定列
- query.startsWith(列名, 字符串); //查询指定列名的值以字符串开头的集合
- query.ascending(列名称); //对指定列升序排序
- query.descending(列名称); //对指定列降序排序
- query.notEqualTo("name", "bmob");
- query.greaterThan("num", 50); //查询name!=bmob且num>50的数据
- var query1 = new Bmob.Query(Diary);
- query1.greaterThan("isLike", 150);
- var query2 = new Bmob.Query(Diary);
- query2.lessThan("isLike", 5);
- var mainQuery = Bmob.Query.or(query1, query2);
- mainQuery.find({
- success: function(results) {
- // 返回 isLike > 150 or isLike < 5 的值
- },
- error: function(error) {
- // 返回失败
- }
- });
复合查询
- var Lanugage= Bmob.Object.extend("Lanugage");
- var LanQuery = new Bmob.Query(Language);
- LanQuery.greaterThan("count",5);
- var Question = Bmob.Object.extend("Lanugage");
- var questionQuery = new Bmob.Query(Question );
- questionQuery.matchesKeyInQuery("name", "content", DiaryQuery); //查询language对象count>5的question对象集合
- questionQuery.find({
- success: function(results) {
- // do something
- }
- });
注意:与之相对的是:doesNotMatchKeyInQuery获取属性不在子查询结果中的对象
5.分页查询
- query.limit(10); //分页查询,每次查询10条
- query.skip(10); //跳过前10 条再开始查询
6.查询指定字段
- var Diary = Bmob.Object.extend("diary");
- var query = new Bmob.Query(Diary);
- // 只返回score和playerName字段值
- query.select("title");
- query.find().then(function(results) {
- // 返回成功
- });