我有这张桌子:
Name | add | city | id
----------------------
dan | df | mum | 1
abu | kj | del | 2
abu | kj | del | 3
abu | bv | kol | 4
jas | ol | ch | 5
以下查询将显示名称为abu
的行:
Select * from table where name like'%abu%'
现在我想消除重复。为此,我可以使用GROUP BY子句。但它不会显示不重复的行。
它应该显示为
abu kj del
abu bv kol
我怎样才能做到这一点?
答案 0 :(得分:1)
如果你想消除重复,只需像这样添加DISTINCT:
Select DISTINCT * from table where name like'%abu%'
顺便说一句:用“LIKE'%something%'”进行查询是非常低效的。如果你可以在你的场景中,最好做出“LIKE'abu%'
BTW:在你的例子中,如果你想拍摄有计数(*)>的记录。 1你可以使用HAVING子句:
SELECT * from table GROUP BY column HAVING count(*) > 1
答案 1 :(得分:0)
这样的事情可能会让你得到你想要的东西:
SELECT DISTINCT
Name,
add,
city
FROM atable
WHERE Name LIKE '%abu%'