根据您的需求,可以使用以下 SQL 查询来实现:

SELECT
  CASE
    WHEN DAYOFWEEK(NOW()) <= 3 THEN DATE_SUB(NOW(), INTERVAL DAYOFWEEK(NOW()) + 10 DAY)
    ELSE DATE_SUB(NOW(), INTERVAL DAYOFWEEK(NOW()) - 4 DAY)
  END AS previous_sunday,
  CASE
    WHEN DAYOFWEEK(NOW()) <= 3 THEN DATE_SUB(NOW(), INTERVAL DAYOFWEEK(NOW()) + 4 DAY)
    ELSE NOW()
  END AS current_saturday;

这个查询使用了 CASE 语句来根据当前日期的星期几来判断返回的结果。如果当前日期为周一到周三(星期一到星期三),则返回上上周日和上周六的日期;如果当前日期为周四到周日(星期四到星期日),则返回上周日和本周六的日期。

注意:这个查询中使用了 MySQL 特定的函数 DAYOFWEEK()DATE_SUB(),请确保您的数据库支持这些函数。如果您使用的是其他数据库,请根据相应的函数进行修改。


原文地址: https://www.cveoy.top/t/topic/p6zM 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录