Bitte ein Bit

hoi zsammen !!

ich habe folgendes problem…

ursprungstabellen sind 3 an der zahl (t1, t2, t3)
in jeder sind die gleichen felder zu finden (id, anzahl)

mein ziel ist es eine art übersichtstabelle zu erzeugen in der jede id der ursprungstabellen einen datansatz bekommt (also identische id´s aus unterschiedlichen tabellen natürlich in einen datensatz)
da in t1 sämtliche id´s vorhanden sind sollte das wohl machbar sein…
die spalten t1, t2 und t3 sollen mir per Bit anzeigen ob das feld anzahl der jeweiligen tabelle mit der von t1 übereinstimmt

die ergebnistabelle habe ich mir vorher erstellt mit den feldern (id, t1, t2, t3) wobei die felder t1, t2 und t3 vom typ bit sind.
mit dem code den ich unten angehängt habe, habe ich nun noch das problem, dass er mir lediglich für die id´s einen datensatz anlegt, die in allen drei ursprungstabellen vorkommen.


INSERT INTO Tabelle4 ( id, t1, t2, t3 )
SELECT t1.Id, -1 AS Ausdr1, [t1].[anzahl]=[t2].[Anzahl] AS Ausdr2, [t1].[anzahl]=[t3].[Anzahl] AS Ausdr3
FROM (t1 INNER JOIN t2 ON t1.Id = t2.Id) INNER JOIN t3 ON t1.Id = t3.Id
;

danke vorab !!
Gruß
\lila

hoi zsammen !!

Ahua.

mit dem code den ich unten angehängt habe, habe ich nun noch
das problem, dass er mir lediglich für die id´s einen
datensatz anlegt, die in allen drei ursprungstabellen
vorkommen.

Mach aus den INNER JOINs LEFT JOINs, so dass die ID aus t1 (die ja, wie Du schrubst, alle IDs enthält) das Ganze steuert. Kannst Du in der Entwurfsansicht machen (auf die Beziehung klicken und die Option „alle aus t1 und nur die aus t2 …“ auswählen) oder direkt im SQL-Code.

Gruß kw

Hallo, lila!

INSERT INTO Tabelle4 ( id, t1, t2, t3 )
SELECT t1.Id, -1 AS Ausdr1, [t1].[anzahl]=[t2].[Anzahl] AS
Ausdr2, [t1].[anzahl]=[t3].[Anzahl] AS Ausdr3
FROM (t1 INNER JOIN t2 ON t1.Id = t2.Id) INNER JOIN t3 ON
t1.Id = t3.Id

Ist schon fast gut. Ersetze „INNER JOIN“ durch „LEFT JOIN“, und schon passt es.

INNER JOIN setzt eine Gleichheitsbeziehung voraus und schränkt auf diese ein. OUTER JOINs bilden so was wie eine Teil- bzw. Obermenge ab. Der LEFT JOIN (Literatur: Left Outer Join) oben bewirkt, dass alle Datensätze aus t1 angezeigt werden, auch wenn in t2 und/oder t3 keine passenden Datensätze vorhanden sind. Das aber nur als Erklärung.

Gruß, Manfred

Hoi Manfred !

vor lauter bäumen und so… *brettvormkopp
dank dir !!!

noch kurz was anderes… hats du auf die schnelle nen syntax beispiel parat wenn ich die tabelle nicht vorher von hand erstellen wollte, sondern durch eine sql-qry ? (also mit bit feldern) irgendwie werd ich da nich so recht fündig
oder müsst ich das per vba machen ?

Gruß
\lila

Hoi kw !

vor lauter bäumen und so… *brettvormkopp
dank dir !!!

mit der entwurfsansicht is das so ne sache… das is wie spanisch… zwar in der schule mal von gehört… aber nie nen ton verstanden ;D

noch kurz was anderes… hats du auf die schnelle nen syntax beispiel parat wenn ich die tabelle nicht vorher von hand erstellen wollte, sondern durch eine sql-qry ? (also mit bit feldern) irgendwie werd ich da nich so recht fündig
oder müsst ich das per vba machen ?

(sry wegen doppelposting… wenn markus mir da schon ne schnittige antwort geben kann hat sich das natürlich erledigt)

Gruß
\lila

Aga.

durch eine sql-qry ? (also mit bit-feldern)

CREATE TABLE tbl_haumichblau (pky_blau COUNTER CONSTRAINT pkx_blau PRIMARY KEY, txt_blautext TEXT(30) CONSTRAINT uix_blautext UNIQUE NOT NULL, boo_Istblau BIT );

Profantabier mal aus und schau Dir die entstehende Tabeule an.

Gruß kw

buh !

Profantabier mal aus und schau Dir die entstehende
Tabeule an.

rennt türlich wied sau… was mich allerdings bisschen wundert ist, dasser mir im Bit feld nicht das übliche kästelchen mit mit häckschn oder mit ohne häckschen macht… sondern die werte einfach so reinschreibt… also -1/0 !?

Gruß
\lila

werte einfach so reinschreibt… also -1/0 !?

Reine Darstellungskiste. Du kannst Ja oder Nein, Wahr oder Falsch reinschreiben; er macht dann eben -1 oder 0 daraus. Änderst Du im Tabellenentwurf im Register „Nachschlagen“ die Darstellungsart in „Kontrollkästchen“, hast Du auch wieder Dein Häckschen (sic!).

Gruß kw

werte einfach so reinschreibt… also -1/0 !?

Reine Darstellungskiste.

is klar

Änderst Du im Tabellenentwurf im Register „Nachschlagen“ die
Darstellungsart in „Kontrollkästchen“, hast Du auch wieder
Dein Häckschen (sic!).

auch klar… direkt in der create table dingeling geht das also nich ?
oder vermutest du dass das auch irgendwie gehen müsste ?

Gruß
\lila