2012-10-10 47 views
0

未來我有這個疑問鮮明的價值並不在查詢

select distinct Name,ID from tbl_abc where Name like '%william jam%' 

我預期的結果是

​​

和未來的結果是

Anderson William James 1 
William James   2 
William James   3 

的數據存在內部表

Anderson William James 1 
William James   2 
William James   3 

我該如何做到這一點。我在過去2小時試過這個,但沒有得到明確的名字。

回答

3
select Name,ID 
from tbl_abc where Name like '%william jam%' 
group by Name 
+0

感謝它的工作。 –

+0

始終歡迎... – jainvikram444

2

可以實現使用GROUP BY,如果你想要的最新記錄使用MAX的ID和名稱相同

對於最大

select Name, MAX(ID) from tbl_abc where Name like '%william jam%' GROUP BY Name 

的第一次使用MIN對於分鐘

select Name, MIN(ID) from tbl_abc where Name like '%william jam%' GROUP BY Name 
+0

+1我更喜歡在任何MySQL決定返回時選擇「ID」的顯式性質,因爲ID不在GROUP BY子句中。 –

+0

但無論如何,如果我們使用'ID',它會給出一個最小值。 –

+0

@YogeshSuthar - 並非總是如此。當你不在'ID'上使用聚合函數並且讓MySQL隱式爲你選擇一個值時,它會爲它遇到的每個'Name'返回第一個'ID'。 –