xcaschox
Goto Top

SQL Abfrage - update

Hallo brauche dringend hilfe,
folgendes Szenario:

ich habe 2 Tabellen, Tabelle 1 = TIUSER, Tabelle 2 TASKS,
in der Tabelle TIUSER, gibt es folgende Spalten: TIUSERID, DEPT, NAME
in der Tabelle TASKS gibt es die Spalten TISUERID, DEPT

die Felder in der TASKS.DEPT sind leer bzw. haben falsche Werte und ich möchte diese mit dem Inhalt der TIUSER.DEPT füllen bzw überschreiben.

Ich hoffe ich habe mich verständlich ausgedrückt. Leider schaffe ich das nicht ganz.
Kann mit bitte jemand helfen?

Vielen Dank.

Gruß
CaScho

Content-ID: 160937

Url: https://administrator.de/contentid/160937

Ausgedruckt am: 26.11.2024 um 03:11 Uhr

Biber
Biber 16.02.2011 um 15:53:33 Uhr
Goto Top
Moin caschopl,

wieso sollten wir dich bei einem derartigen Begehr unterstützen?
Du hättest doch in der Tabelle TASKS die Felder DEPT redundant abgespeichert unsinnigerweise nach einem UPDATE wie oben verlangt.

Was machst du denn dann, wenn sich die Abteilung der UserId.XYZ ändert nächste Woche?
Willst du es dann wieder in der TASKS aktualisieren?
Oder doch lieber widersprüchlich lassen in dem Tabellengemenge?

Geht es um eine Wette, sollst du die Useraktivitäten gezielt verschleiern oder was ist der Plan?

Grüße
Biber
XcaschoX
XcaschoX 16.02.2011 um 16:00:56 Uhr
Goto Top
die Daten kommen aus zwei unterschiedlichen Program versionen und ich versuch jetzt nur die daten in der TASKS.DEPT mit denen der TIUSER.DEPT gleich zusetzen.
Künftig hast du recht sind die Daten in beiden gleich, da es dann einen Bezug auf die TIUSER.DEPT gibt.

und wieso solltet ihr/du mich bei einem derartigen Begehr unterstützen?
weil es immer nette und hilfsbereite Menschen gibt, die anderen die hilfe brauchen gerne helfen....face-smile
und weil ich nicht so fit in SQL bin und weil mein Cheffe eine Auswertung braucht face-smile

Danke
Biber
Biber 16.02.2011 um 16:32:06 Uhr
Goto Top
Moin caschopl,

na hömma...
dass "der Cheffe eine Auswertung braucht" ist für mich kein hinreichender Grund, irgendetwas Redundantes in Produktiv-Tabellen reinzudrücken.

Ich sach ma' so.... ich unterstelle, dass du für eine interne Schulung vorführen willst, wie man/frau es auf keinen Fall machen sollte.
Dafür nimm folgendes Statement:
UPDATE Tasks INNER JOIN TIUser ON TIUser.TIUserID = Tasks.TIUserID
 SET Tasks.DEPT = TIUSer.Dept;

Leichte Abwandlungen könnten nötig sein - ich weiss ja nicht, auf welchem Datenbankblech du schulst...

Grüße
Biber
XcaschoX
XcaschoX 17.02.2011 um 09:41:38 Uhr
Goto Top
Hallo Biber,
danke für das Schulungsbeispiel face-smile

Werds heute gleich testen......

Gruß
caschopl
Biber
Biber 22.02.2011 um 09:25:58 Uhr
Goto Top
Moin caschopl,

Nachfrage:
Zitat von @XcaschoX:
Werds heute gleich testen......

Gruß
caschopl
Hat der Test denn schon Feedback gegeben und magst du dieses weitergeben ans Forum?

Grüße
Biber
XcaschoX
XcaschoX 23.02.2011 um 16:07:01 Uhr
Goto Top
Hallo Biber,
sorry bin doch erst heute dazu gekommen, das ganze zu testen und es hat das gwünschte Ergebnis gebracht.

Vielen Dank für deine Hilfe.

Gruß
CaSchopl