在SQL DB中查找重复项并仅显示一个
我有一张这样的桌子:在SQL DB中查找重复项并仅显示一个,sql,database,Sql,Database,我有一张这样的桌子: Name | Text ----------------------- ALM_1234 | Language1 ALM_1234 | Language2 ALM_4321 | Language1 ALM_9876 | Language1 我需要一个SQL查询,只显示一个包含一个文本的重复条目的条目。显示两个文本中的哪一个并不重要。 像这样: Name | Text -----------------------
Name | Text
-----------------------
ALM_1234 | Language1
ALM_1234 | Language2
ALM_4321 | Language1
ALM_9876 | Language1
我需要一个SQL查询,只显示一个包含一个文本的重复条目的条目。显示两个文本中的哪一个并不重要。
像这样:
Name | Text
-----------------------
ALM_1234 | Language1
ALM_4321 | Language1
ALM_9876 | Language1
任何帮助都将不胜感激。使用分组方式和最小/最大聚合
Select Name,Min(Text) as Text
From yourtable
Group by Name
使用GROUP BY,因为它将删除除第一列以外的所有其他列
select name, text from table group by name;
尝试使用DISTINCT命令:
在查询中使用have,例如此查询:
Select Text From yourtable Group by Text having count(*)>1
如果要查找重复查询,应使用此查询:
select Name , Text from Yourtable group by Name , Text having count(*)>1
祝你好运独特的条款会起作用
select distinct name,text from table
您需要它们在一列或多列上都是唯一的吗?使用Distinct as,从表格中选择Distinct*为什么最小/最大值只是好奇?@Adam-因为OP提到显示两个文本中的哪一个并不重要。@Prdp正是我要找的。谢谢这是哪个dbms?不,OP想要什么,因为它将返回所有4行。括号括住having子句。现在删除括号就可以了。但不是OP想要的,见公认的答案。
select distinct name,text from table