Laden...

SQL Statment zum Erweitern von Daten

Erstellt von oli001 vor 16 Jahren Letzter Beitrag vor 16 Jahren 1.095 Views
O
oli001 Themenstarter:in
449 Beiträge seit 2005
vor 16 Jahren
SQL Statment zum Erweitern von Daten

verwendetes Datenbanksystem: MS SQL

Hi,

Ich habe eine Tabelle in der Messwerte gespecihert sind. Nun haben sich aber Nummerierungen von Messstellen geändert. Also was früher Messstelle 205 war ist jetzt Messstelle 721. Die alten Nummerierungen müssen aber erhalten bleiben. Ich möchte nun die Messwerte eines bestimmten Zeitraumes von der Messstelle 205 aus der Tabelle lesen und mit einer neuen Nummerierung (721) in die Tabelle wieder reinschreiben.
Ich habe mir dazu folgendendes SQL Statement überlegt:

SELECT ms_id, datum, mw FROM mw_table
WHERE ms_id = 205 AND datum > "01.01.2005 00:00:00"
(INSERT INTO mw_table (ms_id,datum,mw) VALUES (721,datum,mw))

Da ich aber nicht wirklich viel SQL Erfahrung habe würde ich gerne eure Meinung dazu wissen. Ist das so in Ordnung oder kille ich grade meine Datenbank 😉

Vielen Dank,

Oli

Viele Grüße, Oli

343 Beiträge seit 2007
vor 16 Jahren

Nun ich bin zwar eher mit MySQL und Oracle vertraut, aber das Statement scheint mir irgendwie merkwürdig.
Ich würde das Ganze so machen:

INSERT INTO mw_table (ms_id,datum,mw) 
VALUES(SELECT ms_id, datum, mw from mw_table 
             where (ms_id = 205) AND (datum > "01.01.2005 00:00:00");

Ich kann jedoch keine Garantie dafür abgeben, da ich mir nicht 100%ig sicher bin, wart lieber noch andere Meinungen ab.

Ach ja: Die Datensätze sind dann natürlich "doppelt" drin, einmal mit der alten und einmal mit der neuen Nummer. Ob das vom Prinzip her so klug ist weiß ich nicht.

Mfg Preli

[- www.saftware.net -](http://www.saftware.net/)
E
124 Beiträge seit 2006
vor 16 Jahren

Das Statement von preli paßt schon fast. Das VALUES gehört raus und die neue id mit rein:

INSERT INTO mw_table (ms_id,datum,mw)
SELECT 721, datum, mw from mw_table where (ms_id = 205) AND (datum > "01.01.2005 00:00:00")

Grüße
Elric

343 Beiträge seit 2007
vor 16 Jahren

@Elric: Danke fürs Ausbessern, jetzt hab ich auch nochmal was dazugelernt. Die id hab ich ganz vergessen. Was für ein dummer Fehler von mir 🙁

Mfg Preli

[- www.saftware.net -](http://www.saftware.net/)