繁体   English   中英

MySQL中星期几的星期几

[英]Week day of week number in Mysql

我需要编写一个where子句,以选择一年中一个星期编号的星期一和星期五之间的所有记录。 CURDATE()无法正常工作,因为我无法使用当前日期,仅以周数为参考。

我想要达到的目标如下:

WHERE appointment.appointment_date >= DATE(Monday of YEARWEEK(30)) and appointment.appointment_date <= DATE(Friday of YEARWEEK(30))

您可以使用DAYOFWEEK获得。 您可以获取不是SUNDAY或SATURDAY的所有日期。

SELECT.... FROM appointment 
WHERE DAYOFWEEK(appointment.appointment_date) <> 1 
OR DAYOFWEEK(appointment.appointment_date) <> 7;

以下给出了从星期一到星期五的星期几中的所有日期。

WHERE DAYOFWEEK(appointment.appointment_date) >= 2 AND DAYOFWEEK(appointment.appointment_date) <= 7

DAYOFWEEK从1 =周日开始

因此,请使用此SO帖子的上方和接受的答案。

PS日期要正确执行非常复杂,您使用的是哪个日历系统? 英国/美国/ ISO? 是a年吗?

WHERE DATE_FORMAT(appointment.appointment_date, '%w') in (1,2,3,4,5) and ATE_FORMAT(appointment.appointment_date, '%Y') = YEAR(CURDATE())

听到:1 =星期一,2 =星期二,3 =星期三,4 =星期四,5 =星期五

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM