当前位置: 首页 > 面试题库 >

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

伯建安
2023-03-14
问题内容

tempsqlfiddle 上有结构表:

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

我想在本周获得记录,例如,如果现在是2013年11月21日,我希望将2013年11月18日至2013年11月24日的所有行(在星期中)

现在我看下一个算法:

  1. 获得工作日
  2. 计算多少天前是星期一
  3. 计算星期一的日期
  4. 计算周日的未来日期
  5. 要求日期

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

添加的问题是: 为什么 此查询
选择日期记录,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()

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


 类似资料:
  • 问题内容: 我的数据具有日期(Ymd H:i:s)列(类型为datetime)。我想选择输入日期之前1周内的所有记录(在下面的示例中:2011-09-17 00:00:00,但是遇到了一些麻烦。这是我得到的: 我究竟做错了什么?谢谢 问题答案: 我想你错过在前面: 这是我运行的查询,适用于该零件: 您可以使用负值来执行“给定日期前N周”的查询,这样可以正常工作: 要么:

  • 问题内容: 请考虑下表: 实际上,该表具有600,000条记录,但是如示例表中所示,某些已被删除(因此最高的> 600,000)。 可以是,或。 我需要 随机选择 1200条Tweet,每条400条。这可能与一个查询有关吗? 问题答案: 如果(3)的可能值数量有限,则可以通过一组各自具有和的查询轻松完成此操作: 为了将应用于每个组,必须将组括在中。

  • 我想选择强标签内的文本,但不在其下的div。。。 有没有可能直接与jsoup合作? 我的选择尝试(不工作,选择强标签内的完整内容): HTML:

  • 问题内容: 嗨,我有一个带有日期字段和一些其他信息的表。我想选择过去一周(从星期日开始的一周)中的所有条目。 表值: 我想选择上周的所有ID,预期输出为5、6、8 (ID 2不在上周,ID 15在本周。) 怎么写和SQL Query相同。 问题答案:

  • 问题内容: 我有一张桌子,我想在该表格的基础上从每个组中获取前N个项目。如果我设置了那将从每个组中选择第一行,或者如果我设置了那那将从每个组中选择前5行。请帮我。 问题答案: 有多种方法可以做到这一点。这是一个使用相关子查询的查询:

  • 本文向大家介绍如何从MySQL数据库中选择随机记录?,包括了如何从MySQL数据库中选择随机记录?的使用技巧和注意事项,需要的朋友参考一下 为此,您可以使用ORDER BY RAND LIMIT。让我们首先创建一个表- 使用插入命令在表中插入一些记录- 使用select语句显示表中的所有记录- 这将产生以下输出- 这是从MySQL数据库中选择随机记录的查询- 这将产生以下输出-