Hallo,
kann mir jemand sagen warum das hier:
update t2
set t2.letztes_datum:=select(max(t1.datum))
where t2.id=t1.usr
nicht funktioniert?
Also überall wo t2.id und t1.usr gleich sind,
soll in t1 geschaut werden welches DAtum dafür das letzte ist und
das soll dann in das entsprechende Feld vom bestimmten Datensatz in t2 geschrieben werden.
Verstehe nicht wieso das so nicht funktioniert.
Danke schon mal.
Gruß
K.
Hallo,
ganz einfach, weil das FROM fehlt
update t2
set t2.letztesDatum = (select max(t1.datum) from t1 where t1.id = t2.id)
Gruß
Peter
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]
Hallo,
Hallo,
ganz einfach, weil das FROM fehlt
Ja stimmt. Das From habe ich aber nur hier im Posting vergessen. Geht auch sonst nicht.
Gruß
K.
update t2
set t2.letztesDatum = (select max(t1.datum) from t1 where
t1.id = t2.id)
Gruß
Peter
Hallo,
kann mir jemand sagen warum das hier:
update t2
set t2.letztes_datum:=select(max(t1.datum))
where t2.id=t1.usr
nicht funktioniert?
Also überall wo t2.id und t1.usr gleich sind,
soll in t1 geschaut werden welches DAtum dafür das letzte ist
und
das soll dann in das entsprechende Feld vom bestimmten
Datensatz in t2 geschrieben werden.
Verstehe nicht wieso das so nicht funktioniert.
Danke schon mal.
Gruß
K.
Hi,
dann wäre es an der Zeit die verwendete DB zu nennen und die Fehlermeldung/Fehlerbeschreibung.
Jens
update t2
set t2.letztes_datum:=select(max(t1.datum))
where t2.id=t1.usr
Mal von eine Oracle-DB ausgehend:
update tabelle2 t2
set t2.letztes_datum = (select max(t1.datum)
from tabelle1 t1
where t2.id = t1.usr);
Fehler im Update entdeckt:
- der Sub-Select muss in Klammer stehn
- (schon erwähnt worden/übertragungsfehler) FROM im Sub-Select fehlt
- Beim SET-Befehl muss = und nicht := stehen
- beim Verwenden von Alias muss der Tabellenname da stehn und dahinter der Alias (also Tabelle1 t1; nur t1 reicht nicht, es sei denn es ist der Tabellenname dann t1 t1)
- mgl. Fehlerquelle: t1.usr entspricht (nicht) t2.id
- mgl. Fehlerquelle: t2.letztes_datum hat nicht selbes Spaltenformat wie t1.datum
Mehr Fehlerquellen / Fehler fallen mir spontan nicht ein.
Gruß
Andreas