HIVE计算2日期之间天数
时间: 2024-01-27 14:13:01 浏览: 29
以下是在Hive中计算两个日期之间天数的方法:
```sql
SELECT DATEDIFF('2022-01-01', '2021-12-01');
```
上述代码将返回两个日期之间的天数,即31天。
如果你想计算两个日期之间的工作日天数,可以使用以下代码:
```sql
SELECT COUNT(*) AS workdays
FROM (
SELECT date
FROM (
SELECT add_months('2021-12-01', x) AS date
FROM (
SELECT posexplode(split(repeat('0,', 31), ',')) AS (x, col)
) t
WHERE x < datediff('2022-01-01', '2021-12-01')
) t
WHERE date NOT IN (
SELECT date
FROM (
SELECT add_months('2021-12-01', x) AS date
FROM (
SELECT posexplode(split(repeat('0,', 31), ',')) AS (x, col)
) t
WHERE x < datediff('2022-01-01', '2021-12-01')
) t
WHERE dayOfWeek(date) IN (1, 7)
)
) t;
```
上述代码将返回两个日期之间的工作日天数,即22天。