Access-o-Mania

Access-Forum (Deutsch/German) => Tabelle/Abfrage => Thema gestartet von: Achim30 am April 24, 2023, 13:50:05

Titel: Multiplizieren mit 2 Tabellen
Beitrag von: Achim30 am April 24, 2023, 13:50:05
Ich habe 2 Tabellen: ,,Bilder" und ,,Faktor"
In der Tabelle Faktor gibt es die Spalten ,,Kategorie" und ,,Faktor"
(https://galerie-falkenberg.de/wp-content/uploads/2023/04/Bild1.png)

Als Beispiel Die Kategorie ,,Leinwand" hat den Faktor ,,20"

In der Tabelle Bilder Habe ich die Tabellen über die Spalte Faktor verknüpft
SELECT [Faktor].[ID], [Faktor].[Faktor], [Faktor].[Typ] FROM Faktor;
Danach habe ich In der Tabelle ,,Bilder" die Größenangabe aus Spalte ,,L plus Breite" mit der Spalte ,,Faktor" multipliziert = Preis.
[L plus Breite] *[Faktor].
(https://galerie-falkenberg.de/wp-content/uploads/2023/04/Bild2.png)

Nun bekomme ich falsche Ergebnisse. Es wird nicht mit dem angezeigten Faktor multipliziert, sondern mit der ID NR. aus der Tabelle ,,Faktor" im meinem Fall 1, 2 oder 3.
Wie kann ich das ändern?

Titel: Re: Multiplizieren mit 2 Tabellen
Beitrag von: PhilS am April 24, 2023, 14:08:46
Zitat von: Achim30 am April 24, 2023, 13:50:05In der Tabelle Bilder Habe ich die Tabellen über die Spalte Faktor verknüpft
SELECT [Faktor].[ID], [Faktor].[Faktor], [Faktor].[Typ] FROM Faktor;
Danach habe ich In der Tabelle ,,Bilder" die Größenangabe aus Spalte ,,L plus Breite" mit der Spalte ,,Faktor" multipliziert = Preis.
[L plus Breite] *[Faktor].
*In* einer Tabelle kann man keine Tabellen verknüpfen.
Du hast ein Nachschlagefeld definiert, das dir in der Benutzeroberfläche für die Tabelle "Bilder" die Werte aus der Tabelle "Faktor" anzeigt. - Nachschlagefelder können zwar schon nützlich sein, aber sie gaukeln dir optisch etwas vor, was gar nicht wirklich so ist. Daher würde ich eher empfehle in Tabelle darauf zu verzichten und bei Bedarf eine Combobox im Formular zu erstellen, die die gleiche Funktionalität hat.

Um das gewünschte Ergebnis zu erhalten, musst du die Tabelle in deiner Abfrage verknüpfen und bei dem Ausdruck zur Berechnung darauf achten das du die richtigen Felder referenzierst. Etwa so:

 
SELECT   Bilder.[L plus Breite] * [Faktor].[Faktor] AS Ergebnis
FROM Bilder
INNER JOIN Faktor
  ON Bilder.Faktor =  [Faktor].[ID];
Titel: Re: Multiplizieren mit 2 Tabellen
Beitrag von: Achim30 am Mai 05, 2023, 16:01:49
Herzlichen Dank Ich habe nun ein richtiges Ergebnis.
Grüße Achim