2014-05-23 107 views
-1

你好我有一個簡單的問題,哪個sql select運行速度更快?這裏是例子。哪個sql select運行更快

我有500個產品,我想選擇最便宜,我試圖讓它儘可能快,因爲將有更多的產品,每次這樣

  1. 兩個SELECTS

    SELECT * FROM table ORDER BY price ASC LIMIT 1; 
    SELECT * FROM table ORDER BY price DESC LIMIT 1; 
    
  2. 最貴
  3. ONE SELECT

    SELECT min(price), max(price) FROM table; 
    

第二個選項看起來更快,但受限於我可以獲得的任何類型?想法?

感謝

+8

建議:嘗試運行並自己計時嗎? –

+0

在這個時候,它是不可能的,我必須使用真實的數據和500個產品是不夠的比較好,但thx:D我已經嘗試過 – user2826311

+1

一個選擇將超過兩個。 –

回答

3

〜140萬點的記錄,希望這提供了一些粗略的指標

首先查詢: 1行中集(1.23秒)

第二個查詢: 1行中集(1.21秒)

第三查詢: 1行集(0.40秒)

+1

怎麼樣?????????????哪些數據?????? –

+0

@ user790454我有一張類似於OP的表格,運行了3個查詢並且提供了OP的數據 –

+0

非常感謝:D你的例子回答了我的內在問題,即使它對於特定數量的產品甚至是10甚至是重要的000多個產品不會有什麼大的區別,謝謝 – user2826311

0

你的問題的答案真的取決於你的數據庫服務器,從我猜你正在使用MySQL的標籤,但甚至版本可以真正有所作爲。一個優秀的數據庫服務器以最快的方式執行查詢。

此外,您的數據庫結構可以影響您的查詢性能,使用正確的屬性作爲關鍵字可以將搜索性能提高十倍。 (你會失去插入性能)。

在這種特殊情況下,您應該嘗試這些查詢和測試,速度更快。 (我認爲PHPmyAdmin有這個功能)。