【问题标题】:SQL Select average from results of DISTINCT rowsSQL 从 DISTINCT 行的结果中选择平均值
【发布时间】:2019-05-07 04:15:10
【问题描述】:

我正在尝试计算一组与 SQL Server 数据库中每个 DISTINCT 行相关的平均值,但我无法弄清楚如何将它们拼接在一起。我将用一个简单的例子来说明。下表描述了到达 3 点 A、B 和 C 所需的时间。我正在尝试计算每次 DISTINCT 行程之间到达的平均时间。

|开始|结束|时间| |一个 |乙| 5 | |一个 |乙| 10 | |一个 |乙| 3 | |一个 | C | 20 | |一个 | C | 22 | |乙| C | 10 | |乙| C | 8 |

我希望生成查询结果

|开始|结束|平均| |一个 |乙| 6 | |一个 | C | 21| |乙| C | 9 |

我已经尝试过使用 SELECT DISTINCT Start,End 进行连接和嵌套选择的一些事情,但我在解决这个问题时遇到了一些严重的语法问题。没有太多的 SQL 经验。

马特

【问题讨论】:

  • 简单的GROUP BY,结合AVG()设置功能。 (没有选择不同的...)

标签: sql sql-server select distinct


【解决方案1】:

您可以尝试将AVG 聚合函数与group by 一起使用

SELECT Start,End,AVG(Time) Avg
FROM T 
GROUP BY Start,End

【讨论】:

    猜你喜欢
    • 2022-01-07
    • 2016-09-04
    • 1970-01-01
    • 2012-11-16
    • 2014-12-10
    • 2013-03-17
    • 1970-01-01
    • 1970-01-01
    • 2022-11-25
    相关资源
    最近更新 更多