2016-09-18 5 views
0

申し訳ありませんが、私は質問を説明し、以前の答えを検索するのが難しいです。これは私の問題です - 私はイベントのあるMySQLテーブルを持っていますMysql time spread

CREATE TABLE events { 
    id INT, 
    event INT, 
    date DATETIME 
} 

データは週に数回追加されています。私は、2つの隣接する事象間の統計的な時間の広がりを見たいと思う。以下のような何か:

時間2つのイベント

  • 1日、アパートの違い -
  • のn日間隔で2 occurances - - 4 occurances
  • 離れ
  • 2日間のx occurances

それが必要このようなものになろうと思うが、イベントの時間差を計算する。

SELECT COUNT('id') AS 'no', ??? AS 'delta' GROUP BY FLOOR('delta') 
+0

は結果が期待sqlfiddleやショーを行います。 [SQLFiddleとは何ですか、なぜ私は気にする必要がありますか?](http://stackoverflow.com/questions/38899464) – Drew

答えて

0

SQLコードのこの作品はそれをやった:

SET @old = NOW(); 
SELECT COUNT(`id`) AS `no`, query1.`delta` FROM 
    (SELECT `id`, `date`, DATEDIFF(@old, `date`) AS `delta`, @old := `date` AS `old` 
    FROM `life` 
    ORDER BY `date`DESC) query1 
GROUP BY `delta` 
ORDER BY `delta`