2014-12-19 123 views
0

我有一個包含以下日期和值的表。我需要根據日期[最大日期值 - 最小日期值]減去這些值並創建一個表格。根據Mysql中同一行中的另一個值減去值

date value 
2014-11-07 229275 
2014-11-24 138746 
2014-12-17 127112 

預期的輸出結果是:

maxdate mindate  value 
2014-12-17 2014-11-07 102163 

回答

1

如果你可以用MAX(值)和最小(值),那麼這將是很容易:

select max(date) as maxdate, min(date) as mindate, max(value) - min(value) 
from table; 

出現這種情況的工作爲你舉例。

假設你真的想上最小日期和最大日期值,試試這個來代替:

select maxt.date as maxdate, mint.date as mindate, (mint.value - maxt.value) as diff 
from (select t.* from table t order by date limit 1) as mint cross join 
    (select t.* from table t order by date desc limit 1) as maxt; 
相關問題