gpt4 book ai didi

MySQL:如何选择本周的记录?

转载 作者:IT老高 更新时间:2023-10-28 23:42:22 25 4
gpt4 key购买 nike

我有表 temp,其结构位于 sqlfiddle :

id(int 11 primary key)
name(varchar 100)
name2(varchar 100)
date(datetime)

我想获得本周的记录,例如,如果现在 21.11.2013 我想要 18.11.2013 到 24.11.2013(一周)的所有行

现在我看到了下一个算法:

  1. 获取工作日
  2. 计算多少天前是星期一
  3. 计算星期一的日期
  4. 计算 future 的星期天日期
  5. 在日期提出请求

请告诉我,是否存在更短的算法(最好在查询 MySQL 中)?

添加问题是: 为什么this query选择日期 17.11.2013(Sunday) - 23.11.2013(Saturday) 的记录以及如何获取日期 18.11.2013(M​​onday) - 24.11.2013(Sunday) 的记录?

查询:

select * from temp
where yearweek(`date`) = yearweek(curdate())

谢谢!

最佳答案

使用 YEARWEEK() :

SELECT *
FROM your_table
WHERE YEARWEEK(`date`, 1) = YEARWEEK(CURDATE(), 1)

关于MySQL:如何选择本周的记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20120693/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com