"Christmas - the time to fix the computers of your loved ones" « Lord Wyrm

Solved: M$ Access Queryfrage

mat 14.08.2004 - 17:12 565 8
Posts

mat

Administrator
Legends never die
Avatar
Registered: Aug 2003
Location: nö
Posts: 25423
würde hilfe bei folgendem Accessquery benötigen.. vorweg, die struktur muss ca. gleich bleiben (ausser es gibt keine andere lösung) - ist nicht von mir.

es gibt 2 tables, die aus abfragen entstanden sind :rolleyes:, die beide folgende gemeinsame felder haben:

id | zahl1 | zahl2

im table 1 stehen folgende daten:
Code:
1 | 100 | 20
2 | 40  | 40
table 2 sieht folgendermaßen aus:
Code:
2 | 30 | 50
eine abfrage soll die beiden tables nun vereinen:
Code:
1 | 100 | 20
2 | 70  | 90
also alle zahl1 von allen id=1 addieren, sowie alle zahl2 von id=1 und dann einen neuen datensatz daraus erstellen usw.

ich hab echt kA wie das mit access sql funktionieren sollte.. weder inner, left oder right join treffen zu und andere join varianten sind nicht verfügbar.

es sollte auch nicht über einen weiteren temptable gelöst werden.

ich hoffe ihr könnt mir helfen,

tia,
mat

watchout

Legend
undead
Avatar
Registered: Nov 2000
Location: Off the grid.
Posts: 6845
kann access nicht eh' subselects?

Ringding

Pilot
Avatar
Registered: Jan 2002
Location: Perchtoldsdorf/W..
Posts: 4300
Wenn's nicht anders geht, kannst du ja beide in eine Tabelle zusammenselektieren und dann von dort ein simples group by machen.

mat

Administrator
Legends never die
Avatar
Registered: Aug 2003
Location: nö
Posts: 25423
ja, denk mal so werd ichs machen..

@watchout.. subselects, wüsste nicht wie das mit der "entwurfsansicht" vereinbar wäre :p

Facetious

Addicted
Avatar
Registered: Oct 2003
Location: Wien
Posts: 406
hi!

ich weiss nicht ob ichs richtig verstanden hab, aber ich habs so gelöst

Code: PHP
SELECT tabelle1.id, (tabelle1.zahl1+tabelle2.zahl1),(tabelle1.zahl2+tabelle2.zahl2) FROM tabelle1 INNER JOIN tabelle2 ON tabelle1.id = tabelle2.id;

vorraussetzung is das, auch wenn in tabelle2 nur ein wert drin steht, ein datensatz mit id1 vorkommt, nur halt mit nullwerten

vergiss den post fals ich da was falsch verstanden hab


Facetious

watchout

Legend
undead
Avatar
Registered: Nov 2000
Location: Off the grid.
Posts: 6845
Zitat von Facetious
hi!

ich weiss nicht ob ichs richtig verstanden hab, aber ich habs so gelöst

Code: PHP
SELECT tabelle1.id, (tabelle1.zahl1+tabelle2.zahl1),(tabelle1.zahl2+tabelle2.zahl2) FROM tabelle1 INNER JOIN tabelle2 ON tabelle1.id = tabelle2.id;

vorraussetzung is das, auch wenn in tabelle2 nur ein wert drin steht, ein datensatz mit id1 vorkommt, nur halt mit nullwerten

vergiss den post fals ich da was falsch verstanden hab


Facetious
ich glaub eher nicht dass nur ein datensatz in der table drin stehen wird...

@mat: du kannst im access auch sql-tippsen, einfach wenn du ne abfrage offen hast links oben wo du zwischen entwurfsansicht wechseln kannst sql auswählen... ;)

mat

Administrator
Legends never die
Avatar
Registered: Aug 2003
Location: nö
Posts: 25423
@watchout: :eek: echt? ;) :p

habs jetzt doch über temptable gelöst. access ist für saubere "programmierung" einfach nicht prädestiniert.

und zwar in 2 schritten:

1.) table 1 und table 2 per UNION ALL zu einem table gemacht und dann 2.) group by id und sum() zahl1 und zahl2.

einen dank, an alle die gepostet haben.

watchout

Legend
undead
Avatar
Registered: Nov 2000
Location: Off the grid.
Posts: 6845
Zitat von mat
@watchout: :eek: echt? ;) :p
ok, dann hab ich das wohl falsch verstanden, aber wtf hat das dann bitte mit der entwurfsansicht zu tun?

mat

Administrator
Legends never die
Avatar
Registered: Aug 2003
Location: nö
Posts: 25423
geh, war ein scherz.

es geht nur darum, dass die entwurfansicht und die sqlansicht immer kompatibel sein müssem, weil man ja schliesslich immer hin und her schalten kann. deshalb wüsst ich nicht wie ein subquery in die entwurfansicht passen würde.
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz