Mar*_*ner 6 mysql sql select date
如何在SELECT中找到一年中的第一天?
SELECT `DATE`,`SomeValue1`,`SomeValue2`
FROM `SomeTableName`
WHERE (`DATE` >= [...first day of the year in date format...])
Run Code Online (Sandbox Code Playgroud)
我发现这个月 - 但我没有足够的掌握一年:(我一直在寻找这个单独的查询来查找月初和现在之间的数据)
WHERE (`DATE` between  DATE_FORMAT(NOW() ,'%Y-%m-01') AND NOW() ) 
Run Code Online (Sandbox Code Playgroud)
    Gri*_*... 19
我想你需要:
WHERE (`DATE` between  DATE_FORMAT(NOW() ,'%Y-01-01') AND NOW() ) 
Run Code Online (Sandbox Code Playgroud)
说实话,你可以这样做:
WHERE (`DATE` between  DATE_FORMAT(NOW() ,'%Y') AND NOW() ) 
Run Code Online (Sandbox Code Playgroud)
        Tim*_*ray 15
为了获得当年的第一天,我使用:
SELECT MAKEDATE(year(now()),1);
Run Code Online (Sandbox Code Playgroud)
所以在你的查询中你会写:
where `date` >= MAKEDATE(year(now()),1)
Run Code Online (Sandbox Code Playgroud)
在过去整整两年里,我经常做类似销售报告的事情,但我总是希望从一年开始.所以显示2年全年和今年迄今.
where date>= MAKEDATE(year(now()-interval 2 year),1)
Run Code Online (Sandbox Code Playgroud)
但为了进一步复杂化,我们的财政年度从5月1日开始.我总想在5月1日开始.
where date >= MAKEDATE(year(now()-interval 2 year),1) + interval 120 day
Run Code Online (Sandbox Code Playgroud)
或作为替代
where date >= MAKEDATE(year(now()-interval 2 year),121)
Run Code Online (Sandbox Code Playgroud)
五月一日是一年中的第121天.但这种方法在闰年不起作用.
闰年证明版本是:
where date => select MAKEDATE(year(now()-interval 5 year),1) + interval 4 month
Run Code Online (Sandbox Code Playgroud)
无论是否为闰年,都将返回xxxx-05-01日期.
如果上述适用于本月,则适用于本年:
WHERE (`DATE` between  DATE_FORMAT(NOW() ,'%Y-01-01') AND NOW() ) 
Run Code Online (Sandbox Code Playgroud)
        |   归档时间:  |  
           
  |  
        
|   查看次数:  |  
           23196 次  |  
        
|   最近记录:  |