MySql如何在Between子句中使用DATE_SUB [英] MySql How to use DATE_SUB in Between clause

查看:197
本文介绍了MySql如何在Between子句中使用DATE_SUB的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在将DATE_SUB用于DateTime字段时遇到问题.我想使用这样的查询:

I am having problem while using DATE_SUB for DateTime fields. I want to use query like this:

SELECT
    * 
FROM 
    SellBySalesman 
WHERE 
    userid=37 and 
    sellingDate BETWEEN CURDATE() AND DATE_SUB(CURDATE(), INTERVAL 7 DAY)

推荐答案

我不确定您遇到什么错误,但这将无法正常工作.原因是您的 BETWEEN 子句中的参数被颠倒了. BETWEEN 要求第一个参数是min,第二个参数是最大 DATE_SUB 将从日期中减去间隔提供了使其小于当前日期的功能.

I am not sure what error you are getting, but this will not work. The reason is that the arguments in your BETWEEN clause are reversed. BETWEEN requires the first argument to be the min and the second to be the max. DATE_SUB will subtract the interval from the date provided making it less than the current date.

尝试这样的事情:

SELECT
    * 
FROM 
    SellBySalesman 
WHERE 
    userid=37 and 
    sellingDate BETWEEN DATE_SUB(CURDATE(), INTERVAL 7 DAY) AND CURDATE()

这篇关于MySql如何在Between子句中使用DATE_SUB的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆