3列のテーブルがあるとします。
- id(PK、int)
- タイムスタンプ(日時)
- タイトル(テキスト)
私は次の記録を持っています:
1, 2010-01-01 15:00:00, Some Title
2, 2010-01-01 15:00:02, Some Title
3, 2010-01-02 15:00:00, Some Title
互いに3秒以内のGROUPBYレコードを実行する必要があります。このテーブルでは、行1と2がグループ化されます。
ここにも同様の質問があります: MysqlDateTimeグループ15分
私もこれを見つけました: http ://www.artfulsoftware.com/infotree/queries.php#106
これらのメソッドを数秒間機能するものに変換する方法がわかりません。SO質問のメソッドの問題は、既知のポイントで開始する時間のビン内にあるレコードに対してのみ機能するように思われることです。たとえばFLOOR()
、5秒間隔で秒単位で作業する場合、15:00:04の時間は15:00:01とグループ化されますが、15:00:06とはグループ化されません。
これは意味がありますか?さらに詳しい説明が必要な場合はお知らせください。
編集:数字のセット{1、2、3、4、5、6、7、50、51、60}については、それらをグループ化するのが最善のようです{1、2、3、4、5 6、7}、{50、51}、{60}であるため、各グループ化行は、その行が前の3秒以内にあるかどうかによって異なります。私はこれが物事を少し変えることを知っています、これについて意地悪になってすみません。
異なるサーバーからのログをあいまい一致させようとしています。サーバー#1はアイテム「アイテム#1」をログに記録し、サーバー#2はサーバー#1から数秒以内に同じアイテム「アイテム#1」をログに記録します。両方のログ行でいくつかの集計関数を実行する必要があります。残念ながら、サーバーソフトウェアの性質上、私には続行するタイトルしかありません。