2013-10-11 62 views
0

我正在編寫一個查詢來查找帶有最小價格的產品。 這些是兩個查詢我的嘗試:MySQL - 使用min函數或限制order-by查詢

select min(price) from products 

select price from products order by price limit 1 

第一個返回19.950000762939453,第二個返回19.95它是精確的值。所以我的問題是,這兩個查詢有什麼區別?爲什麼第一個奇怪?!並且對於這項任務有更好的表現?

在此先感謝。

回答

2

您的數據類型price可能是一個浮點數,根據定義是不準確的。

如果使用像decimal這樣的定點數據類型,它將是19.95

你可以閱讀它in the doc

+0

我檢查,是的類型是浮動。那麼你認爲哪兩個查詢會更快? – Auxiliary

+1

請看看'explain select ...'。 –