我有这张表中的数据:
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 的行,但仍显示名称列。
所以结果应该是这样的:
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代码中我首先找到重复项
答案 0 :(得分:3)
你在这里
select ID, max(name ) from [list] l
group by id