我temp在 sqlfiddle 上有结构表:
temp
id(int 11 primary key) name(varchar 100) name2(varchar 100) date(datetime)
我想在本周获得记录,例如,如果现在是2013年11月21日,我希望将2013年11月18日至2013年11月24日的所有行(在星期中)
现在我看下一个算法:
请告诉我,是否存在一个较短的算法(最好在查询MySQL中)?
添加的问题是: 为什么 此查询 选择日期记录,17.11.2013(Sunday) - 23.11.2013(Saturday)以及如何获取日期记录18.11.2013(Monday) - 24.11.2013(Sunday)?
17.11.2013(Sunday) - 23.11.2013(Saturday)
18.11.2013(Monday) - 24.11.2013(Sunday)
查询:
select * from temp where yearweek(`date`) = yearweek(curdate())
谢谢!
用途YEARWEEK():
YEARWEEK()
SELECT * FROM your_table WHERE YEARWEEK(`date`, 1) = YEARWEEK(CURDATE(), 1)