sql объединение не работает с группой mysql - PullRequest
0 голосов
/ 27 апреля 2020

У меня есть таблица типа:

+----+------+-------+
| id | name | value |
+----+------+-------+
|  1 | bob  | k     |
|  2 | kate | NULL  |
|  3 | bob  | NULL  |
|  4 | kate | w     |
+----+------+-------+

И я хочу следующий вывод:

+----+------+-------+
| id | name | value |
+----+------+-------+
|  1 | bob  | k     |
|  2 | kate | W     |
+----+------+-------+

при использовании слияния как:

select id,name,coalesce(value) from hey group by name;

вывод is:

+----+------+-------+
| id | name | value |
+----+------+-------+
|  1 | bob  | k     |
|  2 | kate | NULL  |
+----+------+-------+


Как мне достичь желаемого результата? пожалуйста * * 1013

1 Ответ

0 голосов
/ 27 апреля 2020

Требуется агрегирование, но необходимо правильно его построить:

select min(id) as id, name, max(value)
from hey
group by name;

«Правильно» означает, что все неагрегированные столбцы должны быть аргументами функций аргументов, таких как max() или min() .

...