SQLは、隣接する2行のデータに対して加算、減算、乗算、除算の演算を実行します。

SQLは、隣接する2行のデータに対して加算、減算、乗算、除算の演算を実行します。

SQL は、データを特定の順序で並べ替え、特定のフィールドでグループ化した後、隣接する 2 つのデータ行に対して加算、減算、乗算、除算の演算を実行します。

アイデア:

1: まずテーブルデータをグループ化して並べ替え、シリアル番号でラベル付けします

2: 必要に応じてタグフィールドに1を加算/減算する

上記のコード:

個別の a.phone、from_unixtime(cast(floor(a.ts/1000) as bigint)、'yyyyMMdd HH:mm:ss'、cha を選択します。
表Aより
参加する 
(
 a.phone、a.ts、abs(a.ts-b.ts)/1000 cha を選択
 (電話、ts、row_number() を選択、(電話でパーティション、ts で順序付け)テーブルから順位付け)から
 左結合
 ( select phone,ts,rank-1 as rank from (select phone,ts,row_number() over(partition by phone order by ts ) rank from table) a ) b
 a.phone = b.phone かつ a.rank = b.rank の場合
)b
a.phone = b.phone かつ a.ts = b.ts の場合
ここで、a.phone は null ではなく、a.phone<>'';

表のデータは次のとおりです。

最初の列は電話、2番目の列は時間tsであり、同じ電話の2つの隣接するデータにかかる時間を計算する必要があります。

結果は以下のようになります。

3 列目は秒単位です。

補足知識: SQLは現在の行を前の2行のデータの合計と等しく実装します

SQL はフィボナッチ数列に似た関数を実装します。つまり、現在のデータは前の 2 つのデータの合計に等しくなります。詳細については、この記事の例を参照してください。

元のテーブル:

SQL ステートメント(ここでは JION ON の使い方をよく理解してください)

結果

隣接する2行のデータの加算、減算、乗算、除算を実行する上記のSQLは、エディターが皆さんと共有する内容のすべてです。皆さんの参考になれば幸いです。また、123WORDPRESS.COMを応援していただければ幸いです。

以下もご興味があるかもしれません:
  • MySQL データテーブルのパーティション戦略と利点と欠点の分析
  • 列の隣接する2つの行の差を計算するMySQLメソッド
  • MySqlで隣接データを取得する方法

<<:  Dockerイメージを素早くデプロイして実行する最新のIDEAプロセスの詳細な説明

>>:  Vue3 手動カプセル化ポップアップ ボックス コンポーネント メッセージ メソッド

推薦する

超シンプルな QPS 統計手法 (推奨)

過去 N 秒間の QPS 値の統計 (1 秒あたりの選択、挿入などを含む) mysql> se...

CSS3 タブアニメーションの例 背景切り替えの動的効果

CSS 3 アニメーションの例 - タブの背景切り替えの動的効果、具体的なコードは次のとおりです。 ...

JavaScript における正規表現の実際的な応用の詳細な説明

実際の業務では、JavaScript の正規表現が依然として頻繁に使用されます。したがって、この部分...

CentOS プラットフォーム上で LAMP 環境を素早く構築する方法

この記事では、例を使用して、CentOS プラットフォーム上で LAMP 環境を迅速に構築する方法に...

MySQLデータベースインデックスの詳細な説明

目次1. MySQLインデックスの紹介2. MySQLの5種類のインデックスの詳しい説明1. 総合索...

Mac Docker x509証明書の問題を解決する

質問最近、プライベートミラーセンターにログインする必要がありましたが、ログイン時にエラーメッセージが...

Hyper-v仮想マシンを使用してCentos7をインストールする

目次導入準備するシステムイメージをダウンロードHyper-Vを有効にする新しい仮想ネットワークスイッ...

CentOS 6.5 インストール mysql5.7 チュートリアル

1. 新機能MySQL 5.7 はエキサイティングなマイルストーンです。デフォルトの InnoDB ...

DELL R730 サーバーの構成 RAID とインストール サーバー システムとドメイン制御の詳細なグラフィック チュートリアル

最近、会社で DELL R730 サーバーを購入したのですが、偶然次のチュートリアルを見つけたので、...

Rancher で Kubernetes 用の標準化された VMware イメージを構築する方法

Kubernetes を学習するときは、Kubernetes 環境で練習する必要があります。ただし、...

Uniapp は DingTalk スキャンコード ログイン サンプル コードを実装します

UniappにはDingTalk認証ログインがないため、この記事ではDingTalk QRコードログ...

Linux システムコマンドのメモ

この記事では、Linux システム コマンドについて説明します。ご参考までに、詳細は以下の通りです。...

Ubuntu 18.04 で SSH サービスをインストールして設定する方法

sshツールをインストールする1. ターミナルを開き、次のコマンドを入力します。 apt-getアッ...

MySQL 5.7.30 のインストールとアップグレードの問題に関する詳細なチュートリアル

くさびコンピュータにインストールされている MySQL のバージョンが比較的古く、おそらくバージョン...