Node.js Sequelize.js。如何在JSON数据类型中查找对象?

Node.js Sequelize.js。如何在JSON数据类型中查找对象?,node.js,sequelize.js,Node.js,Sequelize.js,我正在使用postgresdb在sequelize.js中编写queryjson数据 Postgres表结构 id: integer, name: string, data: json { id: 3, name: "v4th79j" data: { phone: "123456789", email: "example@gmail.com", password: "$2a$10$qCttQ8leMPCzJfE",

我正在使用
postgres
db在
sequelize.js
中编写
queryjson
数据

Postgres表结构

id: integer,
name: string,
data: json
{
    id: 3,
    name: "v4th79j"
    data: {
        phone: "123456789",
        email: "example@gmail.com",
        password: "$2a$10$qCttQ8leMPCzJfE",
        company_id: 2
    }
}
这是我的数据结构

id: integer,
name: string,
data: json
{
    id: 3,
    name: "v4th79j"
    data: {
        phone: "123456789",
        email: "example@gmail.com",
        password: "$2a$10$qCttQ8leMPCzJfE",
        company_id: 2
    }
}
我正在写这样的查询

var filter = {};
// Filter by email for a user
filter.where = { data: { email: "example@gmail.com"} } ;
Entity.findOne(filter)
.then(function (entity) {
console.log(JSON.stringify(entity))
});
但它不起作用。如何在JSON数据类型中查找对象?

PostgreSQL将JSON数据类型视为文本,因此无法查询一个字段。它将JSON数据的原始文本存储在数据库中,包含空格,并保留任何键和任何重复键的所有顺序

我将数据类型转换为在PostgreSQL版本中引入的jsonb

使用JSONB,它将JSON文档转换为键/值数据对的层次结构。所有的空白都被丢弃,只使用一组重复键中的最后一个值,键的顺序将丢失到存储它们的哈希所指定的结构中。我们可以在特定的字段上应用索引,并且可以轻松地搜索任何特定的字段

您可以通过实际示例了解更多信息

PostgreSQL将json数据类型视为文本,因此无法查询一个字段。它将JSON数据的原始文本存储在数据库中,包含空格,并保留任何键和任何重复键的所有顺序

我将数据类型转换为在PostgreSQL版本中引入的jsonb

使用JSONB,它将JSON文档转换为键/值数据对的层次结构。所有的空白都被丢弃,只使用一组重复键中的最后一个值,键的顺序将丢失到存储它们的哈希所指定的结构中。我们可以在特定的字段上应用索引,并且可以轻松地搜索任何特定的字段


您可以通过实际示例了解更多信息

是否存在一些错误?它不显示任何错误,当代码到达那里时,它将停止工作。是否存在一些错误?它不显示任何错误,当代码到达那里时,它将停止工作。我有一个类似的主题,我需要向http响应中添加一个属性,该属性的结果是JSONB列的一个特定键。您知道这是否可能吗?我有一个类似的主题,我需要在http响应中添加一个属性,该属性的结果是JSONB列的一个特定键。你知道这是否可能吗?