2012-07-18 138 views
1

我有以下SQL:SQL GROUP BY,HAVING和排序(MySQL的)

select code, distance from places;  

的輸出如下:

CODE  DISTANCE 
106  386.895834130068 
80  2116.6747774121 
80  2117.61925131453 
106  2563.46708627407 

我希望能夠只得到一個單碼和最近的距離。所以我想讓它迴歸:

CODE  DISTANCE 
106  386.895834130068 
80  2116.6747774121 

仍在玩Distinct和Group By。

回答

3
select `code`, min(distance) as minimal_distance 
from places 
group by `code` 
+0

冷卻你獲得勝利,第一個回答 – cdub 2012-07-18 08:02:12

+0

由於某種原因,現在,它不是爲我工作 – cdub 2012-07-28 10:01:37

+0

你能更具體?什麼是不正確的工作?你可以提供一個例子[SQLFiddle](http://sqlfiddle.com) – 2012-07-28 14:21:04

1
select code, min(distance) as mindist 
from places 
group by code 
2

試試這個:

SELECT 
    Code, 
    MIN(Distance) AS closest_distance 
FROM 
    your_table 
GROUP BY 
    Code 
2
select `code`, min(distance) as distance 
from places 
group by `code`