当前星期或任何给定日期的开始需要mySQL时间戳吗?

当前星期或任何给定日期的开始需要mySQL时间戳吗?,mysql,timestamp,Mysql,Timestamp,我需要mySQL的时间戳为本周开始或任何给定的日期,如果星期一开始 我正在尝试类似的东西: SELECT UNIX_TIMESTAMP(CONCAT( DATE_SUB(CURDATE(), INTERVAL WEEKDAY(DATE_SUB(CURDATE(), INTERVAL 7 DAY)) DAY), ' 00:00:00')) as start 周一的dayofweek指数为2DAYOFWEEK($date)给出当天的索引(1-7,太阳周六)。因此,您需要从$date的索引中加上或减

我需要mySQL的时间戳为本周开始或任何给定的日期,如果星期一开始

我正在尝试类似的东西:

SELECT UNIX_TIMESTAMP(CONCAT( DATE_SUB(CURDATE(), INTERVAL WEEKDAY(DATE_SUB(CURDATE(), INTERVAL 7 DAY)) DAY), ' 00:00:00')) as start

周一的dayofweek指数为2
DAYOFWEEK($date)
给出当天的索引(1-7,太阳周六)。因此,您需要从$date的索引中加上或减去天数,将其更改为2

e、 g

我想我的语法是对的,但是检查一下

SELECT UNIX_TIMESTAMP(
  CASE WHEN DAYOFWEEK($date)>=2 
    THEN DATE_SUB($date, INTERVAL (DAYOFWEEK($date)-2) DAYS) 
    ELSE DATE_ADD($date INTERVAL 1 DAY) 
  END
);