Daten in mehrere Spalten

unknownuserid

Grünschnabel
Hallo,

ich habe folgende Tabelle in einer SQLite-Datenbank und programmiere in C# und verwende System.Data.SQLite zum ansprechen der Datenbank

Index; Zeit; Messwert; SensorID; AufzeichnungsNummer
Integer; DateTime; Float; Integer; Integer

In dieser Tabelle werden Messwerte von Sensoren gespeichert. Die Zugehörigkeit zum Sensor ist über die SensorID und AufzeichnungsNummer immer gegeben.
Ich möchte nun dem Benutzer eine neue Tabelle anzeigen welche wie folgt aufgebaut ist:

Zeit; MesswertSensor1; MesswertSensor2

es kann nun sein, dass nicht für jeden Sensor zu jeder Zeit Messwerte existieren. folglich kann/hat die Tabelle Lücken (NULL-Werte)

Ich wollte über eine Dummy-Tabelle arbeiten und erzeuge mir zuerst mal die Tabelle mit den DateTime-Werten welche vorhanden sind, für 2 Sensoren z.B. so:

Code:
INSERT INTO DummyMesswerte (Zeit)
SELECT Zeit AS Zeitpunkt 
FROM Messwerten MW1
WHERE MW1.ModulIndex = 0 AND MW1.Aufzeichnung = 1
OR WHERE MW1.ModulIndex = 1 AND MW1.Aufzeichnung = 1

Das ergebnis pass dann auch, es sind keine Zeit-werte doppelt vorhanden. Mein Problem ist nun, ich wollte jetzt die Messwerte befüllen:

Code:
UPDATE DummyMesswerte
MW1 =
(
     SELECT FloatValue AS Messwert1 
     FROM Messwerten
     WHERE Messwerten.ModulIndex = 0 AND Messwerten.Aufzeichnung = 1
     AND DummyMesswerte.Zeit = Messwerten.Zeit
)

Nun habe ich das Problem, dass jetzt aber in allen Spalten für Messwert1 Daten stehen.
Wie kann ich einen Vergleich der Zeit aus dem Select-Statement von der Messwerttabelle mit der Dummy-Tabelle durchführen.

Oder bin ich gänzlich auf dem Holzweg und es gibt eine wesentlich einfachere Lösungsmöglichket?

Bisher sind in der Datenbank etwa 2Mio Messwerte gespeichert.
 
Zurück