『云数据库』查询数据

2024-03-03 13:05:04 浏览数 (2)

toc

一、前言

本篇文章是『云数据库』文章的第 4 篇,主要介绍『云数据库』查询数据

在上一篇文章中,我们已经介绍了如何通过编写代码来更新云数据库中的数据,并指出了一些需要注意的事项。接下来,让我们进一步探讨如何有效地查询数据库中的信息。

二、查询数据

在微信云开发中,数据查询最终都通过调用 .get 方法来实现。具体来说,我们首先需要获取云数据库的集合对象引用,随后便可以使用该对象上的 .get 方法来执行查询操作。

接下来,我将介绍几种查询方法。了解这些方法后,您就可以继续深入学习了。

2.1.查询全部数据

首先,若要查询数据库中指定集合的所有数据,我们可以直接使用 .get 方法进行全量查询,代码如下:

代码语言:javascript复制
async onQueryTap() {
    const res = await stuCollection.get();
    console.log(res);
},

查询结果显示,我们需要的数据已成功检索出来,且数据量相对较小。

在查询全部数据时,有个重要的注意事项需要向大家说明,具体如下:

  • 1.在默认设置下,微信云开发的查询操作最多返回 20 条数据。

若需一次性获取超过默认限制的数据量,我们需利用云函数来实现这一操作。当我在后续内容中详细介绍云函数时,将会再次讨论这个问题。

2.2.根据 id 查询数据

若需要根据特定的 id 来检索数据,我们可以使用 doc 方法来完成这一查询任务:

代码语言:javascript复制
async onQueryTap() {
    const res = await stuCollection.doc('08bade59659d76d500164eca51e17bd0').get();
    console.log(res);
},

查询的结果见下图。从中我们可以清楚地看到被检索出的数据。

2.3.根据条件查询数据

若希望基于特定条件进行数据查询,我们可以利用 where 方法来执行该操作:

代码语言:javascript复制
async onQueryTap() {
    const res = await stuCollection.where({
        age: 99
    }).get();
    console.log(res);
},

查询结果如下所示:

注意事项:类似于全量查询,条件查询默认也只会返回最多 20 条数据。若需一次性检索更多数据,将需要通过云函数来完成。

2.4.分页查询数据

如需进行分页数据查询,我们可以利用 skiplimit 方法来实现这一操作:

  • skip:指定跳过的数据条数。
  • limit:设置返回数据的条数上限。

了解了这些基本知识后,我们就可以开始编写代码了。具体代码示例如下:

代码语言:javascript复制
async onQueryTap() {
    const res = await stuCollection.skip(0).limit(5).get();
    console.log(res);
},

上述分页查询代码的功能是:跳过前 0 条数据,并返回接下来的 5 条数据,即获取第一页的数据。

要检索第二页的数据,则需要设置跳过首个 5 条数据,再返回紧接着的 5 条数据。

2.5.返回指定字段的数据

所述背景是:在进行数据查询时,我们可能不需要获取所有字段的数据,而只需检索特定的字段。

为了实现这一需求,我们可以采用 field 方法:

代码语言:javascript复制
async onQueryTap() {
    const res = await stuCollection.field({
        name: true
    }).get();
    console.log(res);
},

查询结果如下所示:

需要注意的是,id 字段默认无法被排除在查询结果之外。

2.6.排序查询数据

如需对检索到的数据进行排序,我们可以使用 orderBy 方法来实现这一功能:

代码语言:javascript复制
async onQueryTap() {
    const res = await stuCollection.orderBy('age', 'desc').get();
    console.log(res);
},

如上所示,代码通过设置 age 字段进行降序排列来对数据进行排序。具体的查询结果在此不予展示,您可以通过实际操作来查看效果。

三、总结

通过本文的学习,您将能够掌握以下核心知识点:

  • 1.查询全部数据
  • 2.根据 id 查询数据
  • 3.根据条件查询数据
  • 4.分页查询数据
  • 5.返回指定字段的数据
  • 6.排序查询数据

最后,我要感谢您阅读本文。如果您觉得文章有用,请不吝点赞、收藏或者转发。您的支持是我不断创作与分享的最大动力。让我们携手在学习的旅途上相互促进,共同享受知识带来的快乐。

我正在参与2024腾讯技术创作特训营第五期有奖征文,快来和我瓜分大奖!

0 人点赞