0

2行ごとの違いを含む新しいテーブルをmysqlで生成したいと思います。たとえば、次のテーブルがあるとします。

表1:

ID     VALUE

1      16748 
1      19628
1      23245
1      23322
1      33399
2      15367
2      17839
2      34578
2      53421
3      14229
3      19533
........

IDごとのすべての値について、2つの連続する値(行[x + 1]-行[x])の差を取得したいと思います

したがって、私の結果は次のようになります。

ID      DIFF

1       2880
1       3617
1       77
1       10077
2       2472
2       16739
2       18843
3       5304
4

2 に答える 2

0

テーブルをそれ自体と結合することで、まさにそれを行うことができます。

SELECT (first.value - second.value) AS differ FROM `table` AS first JOIN `table` AS second WHERE first.id + 1 = second.id
于 2013-08-10T14:05:46.963 に答える
0

次のようなことを試すことができます:-

SELECT
    MIN(T2.VALUE- T1.VALUE) AS Dif
FROM
    Table T1 INNER JOIN Table T2 on T1.VALUE< T2.VALUE
ORDER BY
    T1.VALUE
于 2013-08-10T13:59:56.843 に答える