2017-08-11 173 views
-2

我有一列有字节,另一列有毫秒。我必须计算每秒比特率的平均比特率。SQL:计算比特率

我这样做:

SELECT AVG(Bytes*8)/AVG(Milliseconds/1000) 
FROM Tracks 

显然,这是错误的。我使用的是练习

我有这个结果的应用

254492.61

而且应该是

254400.25

+0

而且??你的查询有什么问题? –

回答

0

我想你只想要一个平均计算

SELECT AVG((Bytes*8.0)/(Milliseconds/1000.0)) 
FROM Tracks 

你可能想要提高精度t这就是为什么上面使用8.0和1000.0的小数。如果不需要,请删除。

0

我会倾向于写为:

SELECT SUM(Bytes*8)/SUM(Milliseconds/1000) 
FROM Tracks 

这相当于您的查询,虽然 - 假设值总是NULL

,他们或许是平均数的平均值:

SELECT AVG(Bytes * 8/(Milliseconds/1000)) 
FROM Tracks; 

我不会然而,将此描述为平均每秒比特。