postgresql - Sequelize.JS 按日期返回下一个最早的条目?

标签 postgresql sequelize.js

我遇到了一个问题,我想使用 sequelize.js 查询我的数据库以返回,给定一个实例的 createdAt,下一个最早的 createdAt 实例。例如:如果我在数据库中存储了 3 个实例,分别在星期一、星期二和星期三创建。给定星期二实例的 ID 或 createdAt,我想返回星期一实例。
目前我提取所有实例并按日期排序,但这根本不是一个有效的解决方案。

这是我的第一个堆栈溢出问题,所以我不确定我是否有用于提问的格式。

最佳答案

  • 通过 ID 获取实例
  • 选择下一个最早通过实例的 createdAt 的实例:
  •   const { Op } = require('sequelize')
    ...
      const instance = await await db.yourModel.findById(id)
      const nextEarliestInstance = await db.yourModel.findOne({
        where: {
          createdAt: {
            [Op.lt]: instance.createdAt
          }
        },
        order: [['createdAt', 'DESC']]
      })
    

    关于postgresql - Sequelize.JS 按日期返回下一个最早的条目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61468076/

    相关文章:

    node.js - Sequelize - 有什么方法可以进行数据抽象/过滤吗?

    sql - 如何为不销售的商店获得零观察的时间表

    postgresql - Airflow initdb slot_pool 不存在

    postgresql - 使用 postgresql,如何连接表,从左表中选择所有内容并从右表中求和和计数?

    postgresql - 使用 pqsql 使用 Laravel 处理独特的电子邮件

    node.js - 使用sequelize.js 与现有数据库进行交互?

    node.js - 我如何在 Sequelize 中做到这一点?

    reactjs - 你如何在 sequelize 中传递一个 json 数组?

    python - cursor.copy_from 在 postgres 中失败

    javascript - 在 sequelize 上, "include"的 "findOne"不工作