Sequelize ORM 如何实现条件查询

阅读时长 5 分钟读完

Sequelize 是一个 Node.js 的基于 Promise 构建的 ORM(Object-Relational Mapping)。ORM 是一种编程技术,它将数据库与对象之间的联系系统化地处理,可以通过编程语言直接对操作数据的对象进行操作,其对于开发者极大的提升了开发效率,同时也降低了开发的难度。

在 Sequelize 中,我们可以使用一种叫做条件查询的方式对数据库中的数据进行操作。本篇文章将介绍 Sequelize ORM 中的条件查询的实现方式和如何使用 Sequelize ORM 来实现条件查询。

查询条件

在 Sequelize ORM 中,查询条件可以分为三种类型:

  1. 简单查询:查询符合条件的单个数据
  2. 复合查询:查询符合条件的多个数据
  3. 关键字查询:通过指定字段的关键字来实现查询,如 LIKE、IN 等

下面将介绍如何实现这三种类型的查询条件。

简单查询

我们可以用 findOne() 方法查询符合条件的单个数据。在该方法中,我们需要传递一个对象做为参数,该对象所包含的属性与对应的值将对返回结果进行限制。例如:

这条查询语句将查询出 User 表中 id 为 1 的单个数据。其中,where 对象作为查询条件传递给 findOne() 方法。

复合查询

我们可以使用 findAll() 方法查询符合条件的所有数据,同样需要传递一个对象做为查询条件,例如:

这条查询语句将查询出 User 表中年龄(age)为 20 的数据。

关键字查询

在 Sequelize ORM 中,我们可以使用 Sequelize.Op 对象来定义查询的关键字,例如 LIKE、IN 等。以下是一些常见关键字的用法。

运算符

以上查询将查询出 User 表中年龄在 20~30 岁之间的数据。

模糊查询

以上查询将查询出 User 表中名字中含有“小”字的数据。

IN 查询

以上查询将查询出 User 表中 id 为 1、2、3 的数据。

示例代码

以下代码包含了 Sequelize ORM 如何实现条件查询的示例:

-- -------------------- ---- -------
----- --------- - ---------------------

----- --------- - --- --------------------- ----------- ----------- -
  -------- --------
---

----- ---- - ------------------------ -
  --- - ----- ------------------ ----------- ----- -------------- ---- --
  ----- - ----- -------------------- --
  ---- - ----- ----------------- --
---

----- ---- - ----- -- -- -
  ----- ---------------- ------ ---- ---
  ----- -------------
    ----- -----
    ---- ---
  ---
  ----- -------------
    ----- -----
    ---- ---
  ---
  ----- -------------
    ----- -----
    ---- ---
  ---
  
  -- ----
  ----- ---- - ----- --------------
    ------ -
      --- --
    --
  ---
  ---------------------------

  -- ----
  ----- ----- - ----- --------------
    ------ -
      ---- ---
    --
  ---
  ---------------------------- -- ----------------

  -- -----
  ----- ------ - ----- --------------
    ------ -
      ---- -
        ------------------ ---
        ------------------ ---
      --
    --
  ---
  ----------------------------- -- ----------------

  ----- ------ - ----- --------------
    ------ -
      ----- -
        -------------------- ------
      --
    --
  ---
  ----------------------------- -- ----------------

  ----- ------ - ----- --------------
    ------ -
      --- -
        ------------------ --- -- ---
      --
    --
  ---
  ----------------------------- -- ----------------
--

-------

总结

通过本篇文章的学习,我们了解了 Sequelize ORM 的三种查询条件类型,以及如何使用 Sequelize ORM 来实现条件查询。通过 Sequelize ORM 的学习,我们可以更加方便地对数据库进行操作,提高开发效率。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/64cd326a1519ea946c10a224

纠错
反馈