我仍在学习SQL,但我在SQL Server或Postgreы上找到了几种解决方案,但在HUE上似乎无法使用
const Status = () => {
const account = useSelector(state => state.account);
const onClick = (nextLevel: Level) => {
// cahngeLevel() is fetching,
// and data is dispatched at the time of resolution.
changeLevel(nextLevel);
};
...
}
,只允许我计算两天之间的差额
秒,分钟不可用。非常欢迎您的帮助。
我能够用DATEDIFF
分割时间戳,但是后来我找不到正确的方法来比较start_time并将其减去end_time以获得准确的秒数。我找不到时间函数,所以我假设我应该根据时间戳进行计算。获得为
substring_index
所需的输出
from_unixtime(unix_timestamp(start_time, "yyyy-MM-dd'T'HH:mm:ss.SSSSSS"), 'yyyy-MM-dd HH:mm:ss')
substring_index(start_time, 'T', -1)s_tm,
substring_index(end_time, 'T', -1)e_tm
start_date 2018-06-19 13:59:41
end_date 2018-06-19 14:01:17
答案 0 :(得分:0)
Hive解决方案。
以秒为单位的差异:
select UNIX_TIMESTAMP('2018-06-19T14:01:17.000000',"yyyy-MM-dd'T'HH:mm:ss.SSSSSS")-
UNIX_TIMESTAMP('2018-06-19T13:59:41.000000',"yyyy-MM-dd'T'HH:mm:ss.SSSSSS") as seconds_diff
结果:
96
现在计算HH:mm:ss:
的差异select concat_ws(':',lpad(floor(seconds_diff/3600),2,'0'), --HH
lpad(floor(seconds_diff%3600/60),2,'0'), --mm
lpad(floor(seconds_diff%3600%60),2,'0') --ss
)
from
(
select --calculate seconds difference
UNIX_TIMESTAMP('2018-06-19T14:01:17.000000',"yyyy-MM-dd'T'HH:mm:ss.SSSSSS")-
UNIX_TIMESTAMP('2018-06-19T13:59:41.000000',"yyyy-MM-dd'T'HH:mm:ss.SSSSSS") as seconds_diff
) s
结果:
OK
00:01:36
Time taken: 1.071 seconds, Fetched: 1 row(s)
另请参阅以下有关格式转换的答案:https://stackoverflow.com/a/23520257/2700344