Solved: M$ Access Queryfrage

Seite 1 von 1 - Forum: Coding Stuff auf overclockers.at

URL: https://www.overclockers.at/coding-stuff/solved_m_access_queryfrage_121938/page_1 - zur Vollversion wechseln!


mat schrieb am 14.08.2004 um 17:12

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 schrieb am 14.08.2004 um 19:16

kann access nicht eh' subselects?


Ringding schrieb am 14.08.2004 um 22:32

Wenn's nicht anders geht, kannst du ja beide in eine Tabelle zusammenselektieren und dann von dort ein simples group by machen.


mat schrieb am 14.08.2004 um 23:49

ja, denk mal so werd ichs machen..

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


Facetious schrieb am 15.08.2004 um 01:06

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 schrieb am 15.08.2004 um 11:30

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 schrieb am 16.08.2004 um 21:48

@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 schrieb am 16.08.2004 um 22:00

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 schrieb am 16.08.2004 um 22:05

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.




overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2025