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

时间:2019-01-30 18:55:51

标签: mysql

如何选择具有给定星期编号的所有日期的行?

我有日期为:2019-01-05、2019-01-08等的行 现在,我想选择第1周,第2周或第5周的所有这些日期。

SELECT * FROM mytable WHERE myDateColumn = WEEK(5)

这可能吗?

2 个答案:

答案 0 :(得分:0)

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

首先找到星期几的开始和结束日期:

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

然后使用BETWEEN

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

答案 1 :(得分:0)

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