代码之家  ›  专栏  ›  技术社区  ›  Björn C

如何从mySql中的周数中选择一周中的日期

  •  -1
  • Björn C  · 技术社区  · 7 年前

    我有几行日期,如:2019-01-05、2019-01-08等 现在我想选择第一周、第二周或第五周的所有日期。

    SELECT * FROM mytable WHERE myDateColumn = WEEK(5)

    这可能吗?

    2 回复  |  直到 7 年前
        1
  •  0
  •   Sal    7 年前

    WHERE week(myDateColumn) in (1,2,5)

        2
  •  0
  •   Björn C    7 年前

    除了使用mySQL,我没有找到其他解决方案。

    首先查找周数的开始和结束日期:

    $dto = new DateTime();
    $week_start = $dto->setISODate($chosenYear, $chosenWeek)->format('Y-m-d');
    $week_end = $dto->modify('+6 days')->format('Y-m-d');
    

    SELECT * FROM myTable WHERE date BETWEEN '$week_start' AND '$week_end'