在sql中使用MIN时获取错误的查询

时间:2014-06-16 17:39:15

标签: php mysql sql

我有一张这样的表

table

我一直在尝试这个sql代码

SELECT id,lat,lng,name,MIN(hitung) AS Smallest FROM open_list;

但结果给了我错误的查询

wrong

我想做的就是这样:

reall

2 个答案:

答案 0 :(得分:2)

你可以这样做:

SELECT id,lat,lng,name,hitung
FROM open_list
ORDER BY hitung ASC
LIMIT 1

或者,如果你想做更复杂的事情,请从这开始:

SELECT id,lat,lng,name,hitung
FROM open_list
JOIN (
    SELECT MIN(hitung) as hitung
    FROM open_list
) tmp USING (hitung)

答案 1 :(得分:1)

如果GROUP BY列表中没有SELECT非聚合值,则返回的值是任意的。您可以添加GROUP BY,但会返回多条记录,您可以使用ORDER BYLIMIT来获取您之后的信息:

SELECT id,lat,lng,name,hitung
FROM open_list
GROUP BY id,lat,lng,name
ORDER BY hitung ASC
LIMIT 1;