![]() |
AW: MSAccess SQL Update Statement verkürzen?
Hallo Detlef,
weil in der Artikeltabelle der mittlere/niedrigste EKPreis für den Artikel gespeichert wird um dann die Preisberechnungen für die VK's machen zu können. |
AW: MSAccess SQL Update Statement verkürzen?
Im Sinne der Normalisierung gilt aber eigentlich der Grundsatz, dass Daten, die sich aus anderen Daten berechnen/ermitteln lassen, nicht redundant abgespeichert werden, um mögliche Anomalien zu vermeiden. Wenn die Performance sehr darunter leidet, kann man in Ausnahmefällen davon abweichen, muss dann aber auch sicherstellen, dass die Daten immer konsistent sind.
|
AW: MSAccess SQL Update Statement verkürzen?
Zitat:
SQL-Code:
Du hast dann auch die Möglichkeit, je nach DB, das MIN z.B. durch AVG zu ersetzen für den Durschnittspreis o.ä.
Update Artikel A
Set A.EKPREIS= (SELECT Min(ArtLiefEKPreis) From ArtLief Where ArtLiefArtNr=A.ArtNr) |
AW: MSAccess SQL Update Statement verkürzen?
@jumpy
Danke für Deine Unterstützung! Die Feldnamen stimmen so. Update Artikel A Set A.EKPREIS= (SELECT Min(ArtLiefEKPreis) From ArtLief Where ArtLiefArtNr=A.ArtNr) Leider wirft es mir beim Ausführen folgenden Fehler raus: Statement #1: Operation muss eine aktualisierbare Abfrage verwenden. Ich bin neu auf dem SQL Sektor, bin deshalb etwas überfordert. LG Harry |
AW: MSAccess SQL Update Statement verkürzen?
Ok an alle, so hab ich das gelöst (wenn mal jemand das geleiche Problem hat):
//temp Tabelle erstellen CREATE TABLE AATest ( ArtNr TEXT(22) NOT NULL, EKMin currency ); //mit der Abfrage die temp Tabelle füllen INSERT INTO AATest (ArtNr, EKMin) SELECT ArtLiefArtNr, Min(ArtLiefEKPreis) From ArtLief Group By ArtLiefArtNr; // Das Update durchführen UPDATE sArtikel INNER JOIN AATest ON sArtikel.ArtNr = AATest.ArtNr SET sArtikel.ArtEKQuer = AATest.EKMin; // Temp Tabelle wieder löschen Drop Table AATest; Danke für Eure Hilfestellung. LG Harry |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:51 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz