我有一个createdAt列,它存储的值是"2018-11-07 15:03:16.532+00"。我想写一个类似select * from table_name where createdAt = input_date的查询,其中我的input_date只是一个类似2018-11-07的日期值。我如何使用**Sequelize**来写这个查询?
SELECT `crmid`, `dateCreated`, `startDate`, `endDate`, `startAmount`, `finalAmount`, `status` FROM `cashRegisterMain` AS `cashRegisterMain` WHERE (date(`dateCreated`) >= '2020-11-20' AND date(`dateCreated`) <= '2020-11-20') AND `cashRegisterMain`.`createdBy` = 1 ORDER BY `cashRegisterMain`.`dateCreated` DESC;
3条答案
按热度按时间efzxgjgh1#
尝试使用
sequelize.fn()
参数,您可以遵循下面的示例代码。nkoocmlb2#
接受的答案应该工作正常,但如果我们有多个条件,在那里我使用这个-
生成的查询:
g0czyy6m3#
上面的两个答案都很好。它们都使用
sequelize.fn()
,这不是强制性的。我对使用sequelize.fn()
没有任何问题,但我认为我的解决方案更具可读性-选择适合你的任何解决方案。下面是我如何完成这个问题(使用MomentJS和TypeScript):
首先确定您的边界(开始日期、结束日期):
接下来,构建你的查询(我碰巧使用了一个三元):
最后-执行查询: