首页 > 解决方案 > 如何将 sequellize.fn 与具有超过 1 个参数的 SQL TIMESTAMPDIFF 函数一起使用

问题描述

这是我的 SQL 代码:

SELECT mbr_id
FROM `tbl_logs` 
WHERE mbr_id = 187 AND TIMESTAMPDIFF(MINUTE, log_datetime, NOW()) < 60
ORDER BY `log_datetime` DESC

我该如何续集?

我的困惑在于 SQL 函数,尤其是那些参数超过 1 个的函数。这里的示例只是提供了一个接受一个参数的函数。

标签: sequelize.js

解决方案


根据您提供的链接,签名是

public static fn(fn: string, args: any): fn

args: any表示您可以指定/传递多个以逗号分隔的参数(参数)。在您的情况下,您可能会认为签名是这样的

public static fn(fn: string, arg1, arg2, arg3): fn

所以你应该像这样使用它:

sequelize.fn('timestampdiff', sequelize.literal('minute'), sequelize.col('log_datetime'), sequelize.fn('now'))

推荐阅读