我如何使用标准 SQL 计算平均时间

How do i calculate an average time using standardSQL

目前我在 table 中有一列包含以下信息:

例如:

00:11:35
00:20:53    
00:17:52    
00:06:41    

我需要显示那个时间的平均值。

这些时间的平均值为 00:14:15。

怎么做?

啊,我想在 Metabase 中显示它,所以我需要一个转换表单,在平均时间后将其转换为字符串。

所以也许没那么简单。

字段结构为:

Table 字段:tma(输入时间)

以下适用于 BigQuery 标准 SQL

#standardSQL
WITH `project.dataset.table` AS (
  SELECT TIME '00:11:35' tma UNION ALL
  SELECT '00:20:53' UNION ALL    
  SELECT '00:17:52' UNION ALL    
  SELECT '00:06:41' 
)
SELECT 
  TIME_ADD(TIME '00:00:00', INTERVAL CAST(AVG(TIME_DIFF(tma, TIME '00:00:00', SECOND)) AS INT64) SECOND) average_time,
  FORMAT_TIME('%T', TIME_ADD(TIME '00:00:00', INTERVAL CAST(AVG(TIME_DIFF(tma, TIME '00:00:00', SECOND)) AS INT64) SECOND)) average_time_as_string
FROM `project.dataset.table`   

结果

Row average_time    average_time_as_string   
1   00:14:15        00:14:15