postgresql - 使用 postgres 进行 Sequelize - 查找 uuid 数组中包含 uuid 的所有位置

标签 postgresql sequelize.js

我的模型有一个 UUID 主键,我正在尝试进行查询:

const idList = ['70ebc891-cdaf-4547-a88c-264a03c99c8d'];
MyModel.findAll({ where: {
        id: {
          $contained: idList
        } }
      })

但是这个查询不起作用,因为 idList 对于 postgres 来说是 Text[] 类型。

有没有办法在sequelize中将UUID[]强制转换为该数组,或者有其他方法来处理这个问题吗?

Postgres 错误:

ERROR:  operator does not exist: uuid <@ text[] at character 137

谢谢!

最佳答案

想通了。 使用 $in 代替。

MyModel.findAll({ where: {
        id: {
          $in: idList
        } }
      })

关于postgresql - 使用 postgres 进行 Sequelize - 查找 uuid 数组中包含 uuid 的所有位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46540214/

相关文章:

sql - Greenplum 与 PostgreSQL

ruby-on-rails - 在 .where 查询中调用 Rails 对象的方法

postgresql - 如何将 Docker Web 应用程序容器连接到 Docker PostgreSQL 容器?

php - Postgresql 更新唯一列并在更新前验证

sql - 如何在 PostgreSQL 中将行转换为列?

javascript - Sequelize.js,模型的最大 pubDate 返回旧条目而不是最新条目

angular - 在 Sequelize 中返回对象而不是一个对象的数组

node.js - 有没有办法在 Sequelize 中将一个表的一个属性与另一个表的任何属性相关联?

node.js - sequelize nodejs 我可以用 1 个 findAll 找到自定义数组中的所有电子邮件吗?

node.js - Sequelize 不会创建 hasMany 关联,而是创建在 DB 中定义的外键