Registrierung Kalender Mitgliederliste Teammitglieder Suche Häufig gestellte Fragen Zur Startseite

Informatiker Board » Themengebiete » Praktische Informatik » Datenbanken » Problem mit meiner Lösung » Hallo Gast [Anmelden|Registrieren]
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | An Freund senden | Thema zu Favoriten hinzufügen
Neues Thema erstellen Antwort erstellen
Zum Ende der Seite springen Problem mit meiner Lösung
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
Based
Grünschnabel


Dabei seit: 29.10.2022
Beiträge: 1

Problem mit meiner Lösung Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Meine Frage:

Hallo zusammen,

Ich habe zurzeit Datenbanken als Thema in der Schule und habe ein Problem mit meinem Code und oder meinem Programm um eine Aufgabe zu Lösung. Ich wollte wissen ob mein Lösungsansatz Sinn ergibt.
Folgende Tabellen: Trainingsplan(TPID, ^ZID, ^TID) Trainingseinheit(TEID, Tag, Sollzeit, SollDistanz, ^TPID) Trainer(TID, Vorname, Nachname, Grundpreis) Ziel(ZID, Bezeichnung, Faktor)

Aufgabe Grundpreis von allen Trainer um 5% reduzieren.



Meine Ideen:
Mein Lösungsansatz: UPDATE Trainer SET Grundpreis = Grundpreis * 0.95 FROM Trainer JOIN Trainingsplan JOIN Trainingseinheit on Trainer.TID = Trainingsplan.TID AND Trainingsplan.TPID = Trainingseinheit.TPID
29.10.2022 16:07 Based ist offline E-Mail an Based senden Beiträge von Based suchen Nehmen Sie Based in Ihre Freundesliste auf
as_string as_string ist männlich
Haudegen


Dabei seit: 06.11.2013
Beiträge: 634
Herkunft: Heidelberg

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Die Datenbank würde aber nur erlauben, dass in ein Trainingsplan zu nur einem Trainer gehört. Könnten in einem Trainingsplan nicht auch verschiedene Trainer eine Trainingseinheit haben?

Zu Deiner Abfrage: Warum die ganzen Joins? Du musst doch nur was an der Trainer-Tabelle ändern und brauchst dazu auch keine Informationen aus anderen Tabellen. Dann reicht es, wenn Du
UPDATE Trainer SET Grundpreis = Grundpreis * .95
schreibst. Ein Update hat auch keine FROM clause. Das was ein SELECT hinter dem FROM hat, kommt beim UPDATE gleich direkt nach dem UPDATE.

Gruß
Marco

Edit: Hab gerade gelesen, Du kannst sehr wohl eine FROM-Clause im UPDATE haben und dort auch JOINs verwenden. Aber das brauchst Du hier ja nicht, das wäre nur interessant, wenn nicht alle Trainer die Grundpreis-Änderung bekommen sollen, abhängig von Daten in anderen Tabellen. Das ist hier ja aber nicht der Fall.
03.11.2022 15:24 as_string ist offline E-Mail an as_string senden Beiträge von as_string suchen Nehmen Sie as_string in Ihre Freundesliste auf
Baumstruktur | Brettstruktur
Gehe zu:
Neues Thema erstellen Antwort erstellen
Informatiker Board » Themengebiete » Praktische Informatik » Datenbanken » Problem mit meiner Lösung