2011-08-23 49 views
0

顯示重複我有這個表:與非重複

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 

我怎樣才能做到這一點?

+1

什麼RDBMS和版本? –

回答

1

,如果你想消除重複剛纔添加DISTINCT這樣的:

Select DISTINCT * from table where name like'%abu%' 

BTW:使以 「LIKE '%%的東西'」 是非常效率不高的查詢。如果你可以在你的情況下,最好是讓「LIKE‘阿布%’

BTW:在你的例子,如果你想採取有COUNT(*)> 1,您可以使用HAVING子句記錄:

SELECT * from table GROUP BY column HAVING count(*) > 1 
0

像這樣的事情可能給你你所追求的:

SELECT DISTINCT 
    Name, 
    add, 
    city 
FROM atable 
WHERE Name LIKE '%abu%'