mysql - 使用 sequelize nodejs 仅查询当前月份

标签 mysql node.js npm sequelize.js

如何只查询当月的数据。
我现在使用这个查询。

  app.get("/api/timesheet_employerId", function (req, res) {
    console.log("I am the employerId", req.user.id)
    db.TimeSheet.findAll({
      include: [
        'employee'
      ],
      order: [['check_in', 'DESC']],
    }).then(function (results) {
      let filtered_result = results.filter(element => element.employee.EmployerId === req.user.id);
      res.json(filtered_result);
    });
  });the

最佳答案

您应该在 seqeulize.literal 选项中使用 where 并使用条件将某个日期的第一天与当前日期的第一天进行比较:

(DATE_SUB(check_in,INTERVAL DAYOFMONTH(d)-1 DAY)=DATE_SUB(CURDATE(),INTERVAL DAYOFMONTH(d)-1 DAY))

关于mysql - 使用 sequelize nodejs 仅查询当前月份,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64696387/

相关文章:

mysql - 左外连接产生意外结果

javascript - 数据和盐参数需要错误(授权)

node.js - 咕噜连接代理重定向?

node.js - NodeJS Spawn 不触发参数

javascript - Electron:如何捕获来自主进程的所有请求响应?

php - 按具有相似信息的 2 列分组以链接到第二个表

mysql - 即使给定月份没有数据,如何在数据透视查询结果中显示所有月份

java - eclipse无法加载jdbc驱动

javascript - console.log() 作为 response.on() 中的回调

docker - 在 gitlab 管道中安装私有(private) npm 包