MySQL 5.7で連続した値の差分を抽出する
P粉216807924
P粉216807924 2024-04-01 15:51:07
0
2
324

###名前### ###日付### ###時間### ###カウント### ###23### 12 ###22### 製粉所製粉所製粉所 ###22### 2022-07-18 ###マイク### 00 ###マイク### 20 ###マイク### ###22### ###マイク### 2022-07-18 ###マイク### 04現在の入力テーブルには、1 時間ごとに継続的に記録されたカウント情報が保存されています。連続したカウント値の差分を抽出する必要があるのですが、MySQL 5.7を使用せざるを得なくなっているため、これができずに困っています。 私が書いたクエリは次のとおりです: リーリー これでは正確な結果が得られません。 次の出力を取得したいと考えています: ###名前### ###日付### ###時間### ###カウント### ###違い### ###23###
製粉所 2022-07-17
製粉所 2022-07-18 00 15
製粉所 2022-07-18 01 20
製粉所 2022-07-18 02
2022-07-18 03 25
2022-07-18 04 20
2022-07-18 05 製粉所
06 25 2022-07-18
15 2022-07-18 01
2022-07-18 02
03 25 2022-07-18
20
製粉所 2022-07-1712 0
製粉所

2022-07-18

00

15

3製粉所 ###22### 2022-07-182022-07-182022-07-18 ###22### 06 ###マイク### 15 ###マイク### 5 ###マイク### ###22### ###マイク### 2022-07-18 ###マイク### 04 ###マイク### ###22### 2 ###マイク### 私に足りないものを提案してください。
製粉所 2022-07-18 01 20 5
2022-07-18 022 製粉所
03 25 3 製粉所
04 20 5 製粉所
052 製粉所 2022-07-18
25 3 2022-07-18 00
0 2022-07-18 01 20
2022-07-18 022
03 25 3 2022-07-18
20 5 2022-07-18 05
2022-07-18 06 25 3
P粉216807924
P粉216807924

全員に返信(2)
P粉771233336

次のことを試してください:

リーリー

db-fiddle からデモをご覧ください。

いいねを押す +0
P粉569205478

MySQL 5.7 では、変数をインラインで更新して、更新された「Count」値を含めることができます。 「Name」の値が変更された場合は変数をリセットする必要があるため、「Name」の以前の値を含む別の変数を使用できます。次に、IF 関数を使用して次のことを確認します。

以前の名前と現在の名前が同じ場合
  • 次にカウントの差を計算します
  • それ以外の場合は 0
  • を割り当てます
  • これは

ABS 関数で動作し、差に絶対値を適用します。 リーリー a>デモは

こちら

をご覧ください。

MySQL 8.0
では、

LAG のようなものを使用して出力をスムーズに取得できます。これは次と同じになります:

をご覧ください。

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!