我的数据库中的销售额已经过了9天而且此查询没有返回任何原因?
SELECT * FROM `sales`
WHERE date BETWEEN CURRENT_DATE AND
(DATE_ADD(CURRENT_DATE, INTERVAL -10 DAY))
答案 0 :(得分:3)
您必须切换参数。从必须低于。
SELECT * FROM `sales`
WHERE date BETWEEN
(DATE_ADD(CURRENT_DATE, INTERVAL -10 DAY)) AND CURRENT_DATE
您当前的查询将返回更大比现在更早的记录,而不是10天前的记录,因此不包括您要定位的范围。
有关详细信息,请参阅documentation。
如果expr大于或等于min且expr小于或等于 到最大值,BETWEEN返回1,否则返回0.这是等效的 如果所有参数都是表达式(min< = expr AND expr< = max) 属于同一类型。否则进行类型转换 第12.2节“表达式中的类型转换”中描述的规则 评价“,但适用于所有三个论点。