我想知道日期(年月日)是否在一个月的某天(月日)之间.
例如,我想知道“ 2013年4月2日”是否介于“ 4月2日”和“ 4月19日”之间.
我可以轻松地做到这一点,具有一年的价值.但是,没有一年,我需要如何做到这一点的想法.
我正在尝试实现的一些示例:
SELECT 1 WHERE '2013-04-02' BETWEEN '04-01' AND '04-19'; -- result is 1
SELECT 1 WHERE '2014-04-02' BETWEEN '04-01' AND '04-19'; -- result is 1
SELECT 1 WHERE '2014-03-02' BETWEEN '04-01' AND '04-19'; -- result is 1
谢谢
解决方法:
您可以使用DATE_FORMAT().
例
SELECT
*
FROM
table
WHERE
DATE_FORMAT(date,'%m-%d') BETWEEN '04-01' AND '04-19'
编辑
SELECT
*
FROM
table
WHERE
STR_TO_DATE(date, '%m-%d') BETWEEN '04-01' AND '04-19'
标签:sql,mysql,date
来源: https://codeday.me/bug/20191122/2063006.html