Oracle的表服务器提供了一个内置功能TRUNC(timestamp,'DY')
。此函数将任何时间戳转换为前一个星期日的午夜。在MySQL中执行此操作的最佳方法是什么?
Oracle还提供TRUNC(timestamp,'MM')
了将时间戳转换为发生月份的第一天的午夜。在MySQL中,这很简单:
TIMESTAMP(DATE_FORMAT(timestamp, '%Y-%m-01'))
但是这个 DATE_FORMAT
技巧将在数周内失效。我知道此WEEK(timestamp)
功能,但是我真的不想要一年内的星期数。这些东西是用于多年的工作。