Выберите отличительное значение несколько столбцов - PullRequest
0 голосов
/ 02 апреля 2019

Это моя упрощенная таблица

year | teacher
1    | john
2    | john
2    | sam
3    | john
3    | simon

Когда я запускаю запрос ниже

SELECT year, teacher FROM table1 GROUP BY year

Это дает мне результат:

year | teacher
1    | john
2    | john
3    | john

В этом случаеСтолбец year в порядке, так как он показывает все различные значения, однако столбец учителя все еще повторяется.Я также хочу иметь разные значения в столбцах учителя.

Вывод, который я ищу:

year | teacher
1    | john
2    | sam
3    | simon

1 Ответ

1 голос
/ 02 апреля 2019

Этот запрос не является допустимым SQL (даже если MySQL его принимает):

SELECT year, teacher
FROM table1
GROUP BY year;

Вам нужна функция агрегирования около teacher:

SELECT year, MAX(teacher)
FROM table1
GROUP BY year;

Тем не менее, это не делает то, что вы хотите. Это сложно сделать в одном запросе. Вместо этого используйте два запроса:

SELECT DISTINCT year FROM table1;

SELECT DISTINCT teacher FROM table1;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...