SQL Выберите среднее из результатов строк DISTINCT - PullRequest
0 голосов
/ 05 декабря 2018

Я пытаюсь вычислить набор средних значений, связанных с каждой строкой DISTINCT в БД SQL Server, и у меня возникают проблемы с выяснением, как сшить все это вместе.Я проиллюстрирую на простом примере.Вот таблица, которая описывает время, которое потребовалось, чтобы добраться между 3 точками A, B и C. Я пытаюсь определить среднее время, которое потребовалось, чтобы получить между каждой поездкой DISTINCT.

|Start|End|Time|
|  A  | B | 5  |
|  A  | B | 10 |
|  A  | B | 3  |
|  A  | C | 20 |
|  A  | C | 22 |
|  B  | C | 10 |
|  B  | C | 8  |

Iхотел бы, чтобы результаты запроса выдавали

|Start|End|Avg|
|  A  | B | 6 |
|  A  | C | 21|
|  B  | C | 9 |

Я пробовал кое-что с объединениями и вложенными выборками с SELECT DISTINCT Start,End, но у меня возникли серьезные проблемы с синтаксисом, чтобы выяснить это.Не слишком много опыта работы с SQL.

Matt

1 Ответ

0 голосов
/ 05 декабря 2018

Вы можете попробовать использовать AVG агрегатную функцию с group by

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