SQL implementiert Additions-, Subtraktions-, Multiplikations- und Divisionsoperationen auf zwei benachbarten Datenzeilen

SQL implementiert Additions-, Subtraktions-, Multiplikations- und Divisionsoperationen auf zwei benachbarten Datenzeilen

SQL implementiert Additions-, Subtraktions-, Multiplikations- und Divisionsoperationen auf zwei benachbarten Datenzeilen, nachdem die Daten in einer bestimmten Reihenfolge sortiert und nach bestimmten Feldern gruppiert wurden.

Ideen:

1: Tabellendaten zunächst gruppieren, sortieren und anschließend mit fortlaufenden Nummern beschriften

2: Bei Bedarf eine Einheit zum Tag-Feld hinzufügen/entfernen

Oben genannter Code:

wähle eindeutiges a.phone, from_unixtime (cast (floor (a.ts/1000) als bigint), 'yyyyMMdd HH:mm:ss'), cha
aus Tabelle a
verbinden 
(
 Wählen Sie a.phone,a.ts,abs(a.ts-b.ts)/1000 cha
 von (select phone,ts,row_number() über (partition by phone order by ts ) rank from table) a
 links beitreten
 (Wählen Sie Telefon, ts, Rang-1 als Rang aus (Wählen Sie Telefon, ts, Zeilennummer () über (Partition nach Telefon, Reihenfolge nach ts) Rang aus Tabelle) a) b
 auf a.phone = b.phone und a.rank = b.rank
) B
auf a.phone = b.phone und a.ts = b.ts
wobei a.phone nicht null ist und a.phone<>'';

Die Tabellendaten lauten wie folgt:

Die erste Spalte ist die Telefonnummer, die zweite die Zeit ts. Sie müssen die Zeit berechnen, die für jeweils zwei benachbarte Daten derselben Telefonnummer benötigt wird.

Das Ergebnis ist wie folgt:

Die dritte Spalte ist in Sekunden angegeben.

Zusatzwissen: SQL implementiert die aktuelle Zeile gleich der Summe der beiden vorherigen Datenzeilen

SQL implementiert eine Funktion ähnlich der Fibonacci-Folge, d. h. die aktuellen Daten sind gleich der Summe der beiden vorherigen Daten. Weitere Einzelheiten finden Sie im Beispiel in diesem Artikel.

Ursprüngliche Tabelle:

SQL-Anweisung (machen Sie sich hier mit der Verwendung von JION ON vertraut)

Ergebnis

Das obige SQL zum Implementieren von Additions-, Subtraktions-, Multiplikations- und Divisionsoperationen zweier benachbarter Datenzeilen ist der gesamte Inhalt, den der Editor mit Ihnen teilt. Ich hoffe, es kann Ihnen als Referenz dienen, und ich hoffe auch, dass Sie 123WORDPRESS.COM unterstützen.

Das könnte Sie auch interessieren:
  • MySQL-Datentabellenpartitionierungsstrategie und Vor- und Nachteileanalyse
  • Mysql-Methode zum Berechnen der Differenz zwischen zwei benachbarten Zeilen einer Spalte
  • So erhalten Sie benachbarte Daten in MySql

<<:  Detaillierte Erläuterung des neuesten IDEA-Prozesses zum schnellen Bereitstellen und Ausführen von Docker-Images

>>:  Vue3 manuelle Kapselung Popup-Box-Komponente Nachrichtenmethode

Artikel empfehlen

Syntax-Alias-Problem basierend auf Löschen in MySQL

Inhaltsverzeichnis MySQL-Löschsyntax-Aliasproblem...

Detaillierte Erklärung des Prinzips des js-Proxys

Inhaltsverzeichnis Was ist der Proxy-Modus? Einfü...

Spezifische Verwendung der MySQL-Vorbereitungsvorverarbeitung

Inhaltsverzeichnis 1. Vorverarbeitung 2. Vorbehan...

Ein Problem mit der Bereitstellung von MySQL 5.5

MySQL-Bereitstellung Derzeit stellt das Unternehm...

Detaillierte Anweisungen zur Installation von SuPHP auf CentOS 7.2

Standardmäßig wird PHP unter CentOS 7 als Apache ...

js objektorientierte Methode zum Erzielen eines Drag-Effekts

In diesem Artikel wird der spezifische Code zur I...

Detailliertes Tutorial zum Erstellen eines privaten Git-Servers unter Linux

1. Server-Setup Das Remote-Repository unterscheid...

Fehlerbehebung bei der Ursache des 502 Bad Gateway-Fehlers auf dem Nginx-Server

Der Server meldet einen Fehler 502 beim Synchroni...

Detailliertes Tutorial zur Verwendung des Prettier Code-Plugins in vscode

Warum prettier verwenden? In großen Unternehmen k...

Analyse des Implementierungsprozesses der Docker-Container-Orchestrierung

In tatsächlichen Entwicklungs- oder Produktionsum...

So ändern Sie in Nginx die über http aufgerufene Website in https

Inhaltsverzeichnis 1. Hintergrund 2. Voraussetzun...

Adaptive HTML-Tabellenmethode

<body style="scroll:no"> <Tabe...