Sequelize 中的查询表达式操作符详解

阅读时长 5 分钟读完

Sequelize 是一个使用 Node.js 实现的关系型数据库 ORM(Object Relational Mapping) 工具,能够方便地操作 MySQL、PostgreSQL、SQLite和 Microsoft SQL Server 等各种数据库。在使用它进行查询时,我们常常需要用到查询表达式操作符,下面我们就来详细了解一下这些操作符。

查询表达式操作符

Sequelize 支持某些操作符用于查询时的条件组合,这些操作符以下都是针对 find 以及 findAll 等查询操作的。

Op.and 和 Op.or

Op.andOp.or 目前是最为常用的两种操作符。它们分别用于组合与条件和或条件。

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

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

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

Op.eq、Op.ne、Op.gt、Op.gte、Op.lt 和 Op.lte

这些操作符分别代表相等、不等于、大于、大于等于、小于、小于等于。使用这些操作符需要注意,我们将所有的操作符都及其相应的值传递给 where 对象中。

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

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

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

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

Op.in 和 Op.notIn

Op.inOp.notIn 分别代表在给定数组中出现和不出现。使用这些操作符,我们需要将给定数组传递给相应的操作符中。

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

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

Op.between

Op.between 代表值在给定范围内。使用这个操作符,我们需要传递一个包含两个元素的数组,代表给定范围的起止值。

Op.like 和 Op.notLike

Op.likeOp.notLike 这两个操作符分别代表模式匹配和模式不匹配,这里模式可以是任意字符串。

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

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

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

Op.col

Op.col 可以用于引用关联表字段。

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

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

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

总结

Sequelize 中的查询表达式操作符是非常方便的,精准地完成我们的数据查询任务。本文讲述了它们最常见、最基本的使用方法。如果你对这个话题有深入的了解,并能熟练运用这些查询操作符,那么你在前端应用程序的开发过程中一定会事半功倍。

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

纠错
反馈