impala中怎么把08:30:00转换成8.5
时间: 2023-07-31 21:09:34 浏览: 186
Impala的信息仓库:解读TQueryExecRequest结构
Impala中可以使用Hive的UDF函数来完成这个转换。可以使用UNIX_TIMESTAMP函数将时间字符串转换为unix时间戳,然后再用FROM_UNIXTIME函数将unix时间戳转换为指定格式的时间字符串,最后再用正则表达式将时间字符串中的小时和分钟提取出来,进行计算,得到类似于8.5的结果。
具体的SQL语句如下所示:
```
SELECT CONCAT(SUBSTR(FROM_UNIXTIME(UNIX_TIMESTAMP('08:30:00', 'HH:mm:ss')), 1, 1), '.', SUBSTR(FROM_UNIXTIME(UNIX_TIMESTAMP('08:30:00', 'HH:mm:ss')), 3, 2)) AS result;
```
其中,'08:30:00'为要转换的时间字符串,'HH:mm:ss'为时间字符串的格式,可以根据实际情况进行调整。执行以上SQL语句,可以得到结果为8.5。
阅读全文