flink sql1.14版本求本周一到周日日期函数
时间: 2024-05-10 21:18:59 浏览: 146
flink1.14_scala2.12
可以使用 Flink SQL 内置的日期函数来实现,具体如下:
```sql
SELECT
DATE_FORMAT(DATE_SUB(CURRENT_DATE, INTERVAL WEEKDAY(CURRENT_DATE) DAY), 'yyyy-MM-dd') AS monday, -- 本周一
DATE_FORMAT(DATE_ADD(CURRENT_DATE, INTERVAL 6 - WEEKDAY(CURRENT_DATE) DAY), 'yyyy-MM-dd') AS sunday -- 本周日
FROM
(SELECT 1) t;
```
其中,`WEEKDAY(date)` 函数可以返回日期 `date` 是星期几,星期一为 0,星期天为 6。因此,我们可以用 `INTERVAL WEEKDAY(CURRENT_DATE) DAY` 来计算本周一距离当前日期的天数,用 `INTERVAL 6 - WEEKDAY(CURRENT_DATE) DAY` 来计算本周日距离当前日期的天数,再分别加减即可得到本周一和本周日的日期。最后,使用 `DATE_FORMAT(date, format)` 函数将日期格式化为指定格式。
阅读全文