Probleme mit SQL String - UPDATE !

Mitglied: Talon

Talon (Level 1) - Jetzt verbinden

07.06.2006, aktualisiert 10:05 Uhr, 4151 Aufrufe, 2 Kommentare

Guten Morgen

Ich habe ein kleines Problem mit einem SQL String.
Zuerst die Grundlage:

Ich habe eine MS-SQL DB, in die über eine spezielle Software Daten importiert werden.
Das Problem dabei ist, das die Importschnittstelle eine feste Struktur hat.
Es ist also vorgegeben was, bzw. in welche Felder importiert wird.

Ich habe 2 relevante Tabellen (Adressen & Kunden)

In Tabelle Adressen sind 2 Felder von Bedeutung.
- KNR (Kundennummer)
- Postfach (dieses Feld wird "mißbraucht" für die Zuordnung von Mitarbeitern. Ein direkter Import des MA-Kürzels ist nicht möglich)

In Tabelle Kunden nochmals 2 Felder.
- kundennr
- Disponennt (hier muß ich das Mitarbeiterkürzel eintragen)


Ich muß nun erstmal in der Tabelle Adressen alle Datensätze finden, die im Feld Postfach eine bestimmte Nummer stehen haben.
Anschließend muß ich, anhand der ermittelten Kundennummern aus der Tabelle Adressen, die passenden Datensätze in der Tabelle Kunden finden.
Dort muß dann im Feld Disponennt ein entsprechender Wert eingetragen werden.

Ich habe schon verschiedenes versucht:


Hier meckert er schon in Zeile 1 wegen dem Komma. Ohne das Komma bleibt er in Zeile 3 bei adressen.knr stehen.

UPDATE Adressen, Kunden
SET kunden.disponennt = "Talon"
WHERE adressen.knr = kunden.kundennr
AND adressen.postfach = "1"


Auch das hier funktioniert nicht.

UPDATE Kunden
INNER JOIN Adressen
ON knr=kundennr
AND postfach="1"
SET Disponennt = "Talon"



so würde der SELECT Befehl aussehen.

SELECT Disponennt, kundennr, knr, Postfach
FROM Adressen
INNER JOIN Kunden
ON knr=kundennr
AND postfach="1"


Leider finde im Internet nichts wirklich hilfreiches was das updaten von Datensätzen angeht, wenn man mit 2 Tabellen arbeiten muß.

Ich hoffe Ihr könnt mir helfen.

Vielen dank schon mal.

Gruß

Talon
Mitglied: Biber
07.06.2006 um 09:47 Uhr
Moin Talon,

sinngemäß so (ungetestet):
UPDATE Kunden
SET kunden.disponennt = "Talon"
WHERE kundennr =
(select kundennr from adressen where
adressen.knr = kunden.kundennr
AND adressen.postfach = "1")

Gruß
biber
Bitte warten ..
Mitglied: Talon
07.06.2006 um 10:05 Uhr
Vielen Dank

Genau das war es. Ich musste es nur etwas abändern.

UPDATE kunden
SET kunden.disponent = "Talon"
WHERE kundennr =
(SELECT knr FROM adressen
WHERE kundennr = knr
AND postfach = "1")


Ich danke dir biber. Du hast mir sehr geholfen.
Bitte warten ..
Heiß diskutierte Inhalte
Windows 10
Windows 10 Geschwindigkeitprobleme trotz viel mehr Gb Ram
Matthes88Vor 13 StundenFrageWindows 1036 Kommentare

Hallo ihr lieben aaaalso : Da mein neuer Arbeitsspeicher (32gb) von meiner alten Windows 7 version (max mit 8gb kompatibel) nicht angenommen wurde, habe ...

Off Topic
Realistische Gehaltsvorstellung für eine "IT-Allroundkraft"
gelöst JiggyLeeVor 8 StundenFrageOff Topic16 Kommentare

Hallo an alle, ich hege momentan den Wunsch mich von der alten verstaubten Behörden Bürokratie und langweiliger Aufgaben los zu lösen und in einem ...

Windows Userverwaltung
Account Aktivierung über VPN
Phill93Vor 1 TagFrageWindows Userverwaltung3 Kommentare

Hallo, ich muss mir für eine RDP Umgebung für einen Verein eine Lösung für die Account Aktivierung ausdenken. Meine Idee ist die folgende: 1. ...

Switche und Hubs
Suche Deutsche Sprachdatei für D-Link DGS-1210-24 D1 Switch
gelöst Oggy01Vor 1 TagFrageSwitche und Hubs8 Kommentare

Hallo, ich habe einen D-Link DGS-1210-24 Vers. D1 Switch bekommen und suche für diesen eine Deutsche Sprachdatei. Die Firmware ist auf dem aktuellen Stand ...

Humor (lol)
Tipp: Dinge, die man besser nicht klaut
altmetallerVor 9 StundenTippHumor (lol)8 Kommentare

Hallo, so wurde meiner Hündin z.B. heute der (eingeschaltete) GPS-Tracker mit Mobilfunkanbindung quasi "direkt vom Halsband weggefunden". Akku hatte noch 60% :-P Und ich ...

Video & Streaming
Videoaufnahme funktioniert nur bis zum ersten Reboot (0x80040217)
IllusionFACTORYVor 1 TagFrageVideo & Streaming10 Kommentare

Ich nehme über eine Video-Software von einem USB-Hardware-Encoder Video auf. Das funktioniert exakt bis zum ersten Reboot - danach bekomme ich beim Starten der ...

Windows Server
GPU Passthrough HYPER-V 2019
bintesVor 1 TagFrageWindows Server7 Kommentare

Hallo, ich habe ein ein Problem mit der Bereitstellung einer Grafikkarte an eine virtuelle Maschine. Hardware: - HPE ProLiant DL380 Gen9 V4 Rack Server ...

Windows Server
Windows Admin Center DC
maximidVor 1 TagFrageWindows Server3 Kommentare

Hallo, ich hätte mal eine Frage zu Windows Admin Center und zwar schaue ich es mir aktuell etwas an da mir die zentrale Verwaltung ...