PDA

Vollständige Version anzeigen : Unionsabfragenzusammenfassung!!!


EraZor
18.10.2001, 10:37
Hi,

ich habe eine Unionsabfrage die rechner zusammenfasst. Diese sind endweder in der Verwaltung oder der Schulung im Einsatz. Nun will ich das diese Rechner auch jeweils in Verwaltung und Schulung aufgeteilt werden. Also keine Einträge wie rechner 5, 550Mhz, verwaltung; rechner 42, 600Mhz, verwaltung;

Keine doppelt Werte sondern nur Rechner in Schulung ODER Verwaltung, wobei logischerweise der Neupreis das Ausgabekriterium ist. Ersteinmal der Code meiner Unionsabfrage:

SELECT rechnernummer, takt, festplattenspeicher, standort, [schulung oder verwaltung], neupreis, prozessor
from pc_aachen
UNION SELECT rechnernummer, takt, festplattenspeicher, standort, [schulung oder verwaltung], neupreis, prozessor
from pc_akademiker

usw....

Müsste doch eigentlich leicht möglich sein, aber irgenwie bekomm ich das einfach nicht hin.

mfg

Bernd

erwin
18.10.2001, 11:08
so ganz klar ist mir nicht, was du da jetzt erreichen willst ?

Da Grundproblem orte ich aber bei deinem Tabellendesign: Du hast ja 2 strukturidente Tabellen, die man besser zusammenfasst und um ein weiteres Feld "Einsatzzweck" ergänzt. Als Inhalt dieses Feldes schreibst du "sinngemäß" den jetzigen Tabellennamen also "Schulung" oder "Verwaltung".

Dann müsste sich die gewünscht Auswertung einfach mittels SELECT DISTINCT... bewerkstelligen lassen.

so long erwin...

Schnuckelhase
18.10.2001, 11:56
Besonders klar ist Deine Fragestellung nicht, vielleicht meinst Du ja sowas:

SELECT [schulung oder verwaltung], Sum(Neupreis) AS [Summe Neupreis]
FROM quRechnerUnion
GROUP BY quRechnerUnion.[schulung oder verwaltung];

EraZor
18.10.2001, 12:03
HI,

das habe ich schon. Ich habe bereits ein Feld das "Einsatz" heißt und in dem "Schulung" oder "Verwaltung" steht. Das einzige was ich jetzt nicht hinbekomme ist eine Auflistung aller PCs, wobei nur die Felder "Neupreis" und "schulung oder verwaltung" vorkommen solllen. Der Neupreis soll zusammengerechet werden und jeweils die Gesamtsumme für Verwaltung und die Gesamtsumme für Schulung ausgegeben werden. Ich habe es (nach deinem Tip) auch schon mit SELECT DISTINCT versucht aber sagte er mir nur das ich [schulung oder verwaltung] nicht in als Teil einer Aggregatfunction einschließen kann. Mein Code war:

SELECT DISTINCT sum(neupreis), [schulung oder verwaltung]
FROM union_pc;

Was hab ich falsch gemacht?

mfg

Bernd

EraZor
18.10.2001, 12:07
@ schnuckelhase: ja, genau das meinte ich und jetzt funzt es auch. hätte ich mir den letzten Beitrag sparen können. Naja, egal.

THX

Bernd

Schnuckelhase
18.10.2001, 12:19
Hallo EraZor, so ganz bei der Sache scheinst Du ja nicht zu sein. Hast nämlich gestern schon die gleich Lösung aufgetischt bekommen:
Kurt aus Kienitz
erstellt am 17.10.2001 um 15:51 Uhr
--------------------------------------------------------------------------------
Hallo,
Erstelle eine neue Abfrage mit folgendem Inhalt:

SELECT einsatz, Sum(lizenzanzahl)
FROM DeineUnionAbfrage
GROUP BY einsatz;

Grüße Kurt

zusammenfassung in unionsabfrage (http://www.ms-office-forum.net/forum/showthread.php?s=&threadid=50489)
:confused:

EraZor
19.10.2001, 07:05
hhmmm, sollte vielleicht mal besser ausschlafen. Wird nicht wieder vorkommen

mfg

Bernd