2017-09-14 111 views
-3

我需要跳過每天高價格的結果。我有這樣的表格:正確SQL查詢

+------+-------------+-------+ 
| days | return_date | value | 
+------+-------------+-------+ 
| 2 | 2017-12-27 | 15180 | 
| 3 | 2017-12-28 | 14449 | 
| 4 | 2017-12-29 | 13081 | 
| 5 | 2017-12-30 | 11203 | 
| 6 | 2017-12-31 | 9497 | 
| 6 | 2017-12-31 | 9442 | 
+------+-------------+-------+ 

如何打印6天內的最低價格(本例中爲9442)。

+0

什麼是高價位,爲什麼'9442'不打印 –

+0

9442較低: - |?。實施 – Strawberry

+0

對不起,我心中已經編輯後 –

回答

0

我們可以使用GROUP BY子句和聚合函數。例如:

SELECT t.days 
    , t.return_date 
    , MIN(t.value) AS min_value 
    FROM mytable t 
GROUP 
    BY t.days 
    , t.return_date 

這並不真正「跳過」行。它訪問滿足WHERE子句中條件的所有行(在本例中爲表中的每一行)。然後,MySQL將行分解爲組(在本例中,days和return_date值相同的行被放入組中)MIN(t.value)聚合函數從組中選出最小(最小)值

上面的查詢是隻是滿足特定規格的一個方法的一個例子