SQL zwei Abfragem in einer Query subtrahieren


Tinolino

Grünschnabel
Hallo zusammen,

mich quält geraden eine SQL-Query, mit der ich leider nicht mehr weiter komme
Folgende Ausgangssituation mit Beispieldaten:

in einer Tabelle werden täglich einmal Mess-Daten gespeichert.
nun möchte ich gern die Messwert-Diverenzen zwischen gestern und heute ermitteln.


idgruppemesswerttag
11102020-06-12
22122020-06-12
3392020-06-12
41112020-06-13
5292020-06-13
6372020-06-13

nun möchte ich zbs. durch Angabe zweier Messtage (Datum), gern die Differenzen der einzelnen Messwerte gruppiert nach Gruppen abfragen.

Herauskommen sollte bei Angabe von 2020-06-13 minus 2020-06-12:

gruppedifferenz
1-1
2-3
3-2

Wie kann ich diese Query formulieren? Ich komme nicht weiter.

Kann mit hier jemand weiter helfen??
Vielen Dank vorab!

Viele Grüße Tino
 

Yaslaw

n/a
Moderator
Einfach 2 mal die Tabelle nehmen und über die Gruppe verbinden
SQL:
select
    t1.gruppe,
    t1.messwert - t2.messwert as differenz
from my_table t1, my_table t2
where t1.gruppe = t.gruppe
    -- Wie man das Datum angeben muss ist Datenbankspezifisch. Hier mal ein Beispiel für MS Access
    and t1.tag = #2020-06-12#
    and t2.tag = #2020-06-13#
 
Zuletzt bearbeitet:

Tinolino

Grünschnabel
Hallo Yaslaw, Danke für die schnelle Antwort und den guten Tipp!
Ich hatte es bislang mit zwei Unterquerys im Select probiert und diese beiden subtrahiert. Letztendlich noch Gruppieren und die Gruppen als alias in die Unterquery eingesetzt!

Damit bin ich dann auch zum Ziel gekommen, aber Deine Methode ist viel eleganter und schneller!
Hab recht Vielen Dank!
 

Forum-Statistiken

Themen
272.363
Beiträge
1.558.641
Mitglieder
187.836
Neuestes Mitglied
MMazi