collapse

* Benutzer Info

 
 
Willkommen Gast. Bitte einloggen oder registrieren. Haben Sie Ihre Aktivierungs E-Mail übersehen?

* Wer ist Online

  • Punkt Gäste: 52
  • Punkt Versteckte: 1
  • Punkt Mitglieder: 1

Es sind keine Mitglieder online.

* Forenstatistik

  • stats Mitglieder insgesamt: 13754
  • stats Beiträge insgesamt: 62828
  • stats Themen insgesamt: 8540
  • stats Kategorien insgesamt: 5
  • stats Boards insgesamt: 16
  • stats Am meisten online: 415

Autor Thema: Zwei Tabellen vertikal zusammenfügen  (Gelesen 346 mal)

Offline Knopf

  • Newbie
  • Beiträge: 48
Zwei Tabellen vertikal zusammenfügen
« am: Juni 16, 2017, 17:32:26 »
Hallo Experten!

Ich versuche mich wieder an einer Programmierung und komme nicht weiter :(
Ich will zwei Tabellen miteinander verbinden, die "teilweise verknüpft" sind. Für die zeilen, die nicht verknüpft sind soll der wert null gespeichert werden. Ein Beispiel:
Tabelle 1
Datum
01.01.17
02.01.17
03.01.17

Tabelle2
Datum          Wert
01.01.17         3
03.01.17         5

Zieltabelle
Datum          Wert
01.01.17         3
02.01.17         0
03.01.17         5

Ich würde die Tabelle gern über eine Abfrage zusammensetzten. Wie geht das? Vielen Dank für eure Hilfe!!
Lg
 

Offline MzKlMu

  • Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 6846
Re: Zwei Tabellen vertikal zusammenfügen
« Antwort #1 am: Juni 16, 2017, 18:11:57 »
Hallo,
ein LEFT JOIN sollte das können.
SELECT Datum, Nz([Tabelle2].[wert],0) AS Wert
FROM Tabelle1
LEFT JOIN Tabelle2
ON Tabelle1.Datum = Tabelle2.DatumTab2


PS:
Wert sollte man als Feldname nicht verwenden.
Gruß
Klaus
 

Offline Knopf

  • Newbie
  • Beiträge: 48
Re: Zwei Tabellen vertikal zusammenfügen
« Antwort #2 am: Juni 17, 2017, 10:35:42 »
Vielen Dank für deine Antwort. Leider funktioniert es nicht :( Ich bekomme Probleme mit dem tab2...Ich werde aufgefordert eine Parametereingabe zu machen. Wofür steht das tab2? Meine Recherche hat leider auch nichts ergeben :/
 

Offline MzKlMu

  • Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 6846
Re: Zwei Tabellen vertikal zusammenfügen
« Antwort #3 am: Juni 17, 2017, 10:38:41 »
Hallo,
Du musst natürlich die Feldnamen anpassen. Das Tab2 ist von mir nur einfach als Ergänzung für das Datum verwendet, damit man weiß, dass das das Datum aus Tabelle 2 ist.
Man tut sich übrigens viel leichter, wenn es in einer Datenbank über alle Tabellen keine gleichen Feldnamen gibt.

Die Abfrage ist getestet und funktioniert, wenn die Feldnamen stimmen bzw. angepasst sind.
Gruß
Klaus
 

Offline Knopf

  • Newbie
  • Beiträge: 48
Re: Zwei Tabellen vertikal zusammenfügen
« Antwort #4 am: Juni 17, 2017, 10:46:16 »
Hallo Klaus,

ja, ich habe unglückliche Beispielnamen gewählt, werde ich nächstes Mal anders machen^^
Ich habe die Feldnamen angepasst, aber dann sieht es bei mir so aus:

Datum           Wert
01.01.2017       1
                        0
03.01.2017       3


Die Spalte mit dem Datum bleibt leer...:(
 

Offline MzKlMu

  • Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 6846
Re: Zwei Tabellen vertikal zusammenfügen
« Antwort #5 am: Juni 17, 2017, 10:49:43 »
Hallo,
und warum zeigst Du jetzt nicht die Abfrage (SQL), wie sonst soll man da einen Fehler finden ?
Gruß
Klaus
 
Folgende Mitglieder bedankten sich: Knopf

Offline Knopf

  • Newbie
  • Beiträge: 48
Re: Zwei Tabellen vertikal zusammenfügen
« Antwort #6 am: Juni 17, 2017, 10:50:42 »
Ahh, ich habs jetzt - Dank deinem Tipp:

SELECT DatumTab1, Nz([Tabelle2].[wert],0) AS Wert
FROM Tabelle1
LEFT JOIN Tabelle2
ON Tabelle1.Datum = Tabelle2.DatumTab2

Die Feldnamen wieder....

VIELEN DANK, KLAUS!
« Letzte Änderung: Juni 17, 2017, 10:55:27 von Knopf »
 

Offline Beaker s.a.

  • Access Guru
  • ****
  • Beiträge: 1550
Re: Zwei Tabellen vertikal zusammenfügen
« Antwort #7 am: Juni 17, 2017, 12:06:01 »
Hallo Knopf,
Zitat
Wert sollte man als Feldname nicht verwenden.
Auch "Datum" ist ein reserviertes Wort.
Und wenn man sich, auch bei einem so übersichtlichen SQL-String,
angewöhnt die Tabellen alle explizit zu benennen und vielleicht auch
noch Aliase verwendet, wird es bei grösseren Abfragen deutlich leichter.
Und auf die Suffixe kannst du auch verzichten, wenn du das Datumsfeld
der Bedeutung der Tabelle anpasst (habe ich im Beispiel nicht gemacht,
Benamsung also wie zuerst; -> ändern!).
SELECT T1.Datum, Nz(T2.Wert,0) AS Wert
FROM Tabelle1 AS T1
LEFT JOIN Tabelle2 AS T2
ON T1.Datum = T2.Datum

gruss ekkehard
--
Beaker s.a., der lieber an seinem eigenen Projekt arbeiten würde/sollte, aber irgendwie immer gerne seinen Senf dazu gibt ;-)
S.M.I².L.E.
 

Offline Lachtaube

  • Access-Meister
  • ***
  • Beiträge: 771
Re: Zwei Tabellen vertikal zusammenfügen
« Antwort #8 am: Juni 17, 2017, 14:28:14 »
DATE - weil Datentype - ist ein in SQL reserviertes Wort - nicht aber die deutsche Übersetzung Datum. Datum wird bei Verwendung in einer Abfrage schließlich auch nicht eckig geklammert, wie das bei DATE und anderen reservierten Worten der Fall ist. Gleiches gilt auch für Wert, der als englischer Begriff VALUE ein reserviertes Wort darstellt.
Grüße von der (⌒▽⌒)
 

Offline Beaker s.a.

  • Access Guru
  • ****
  • Beiträge: 1550
Re: Zwei Tabellen vertikal zusammenfügen
« Antwort #9 am: Juni 17, 2017, 15:32:35 »
Danke.
Vielleicht sollte ich auch endlich mit einer englischen Access-Version arbeiten.  ;D
--
Beaker s.a., der lieber an seinem eigenen Projekt arbeiten würde/sollte, aber irgendwie immer gerne seinen Senf dazu gibt ;-)
S.M.I².L.E.