У меня есть данные в этой таблице:Группировка по дублей на один столбец, но иллюстрирующий еще один столбец
id | name
--------------------
265 | crazy row
265 | "crazy row" LTD
273 | simple
273 | simple & co
273 | "microsoft" corporation
273 | microsoft
284 | oracle
284 | some another
Я хочу, чтобы удалить строки с теми же ID с, но по-прежнему вызова на экран Name столбец ,
Так что результат должен выглядеть следующим образом:
id | name
--------------------
265 | crazy row
273 | simple
284 | oracle
Это не имеет значения, какое имя значение будет отображаться: первая [сумасшедшая строка] или последний [ «сумасшедший строки» LTD].
Я написал кое-что, но, конечно, это неправильно
SELECT
l.[id], [name]
FROM
[list] l
JOIN
(SELECT [id]
FROM [list]
GROUP BY [id]
HAVING COUNT(*) > 1) x ON l.id = x.id
Отредактировано: есть нормальные строки (не дублирует) в моей таблице. Моя цель состоит в том, чтобы найти дубликаты и показать одно имя, это потому, что в моем SQL код, который я нахожу дубликаты первых
Вы должны поместить его в агрегированной стоимости, так что вы могли бы попробовать MAX ([имя]) или любую другую функцию, которая возвращает одно из многих значений? – Patrick