Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Access Datensaetze zusammenfuegen

Frage Entwicklung Datenbanken

Mitglied: Xaero1982

Xaero1982 (Level 4) - Jetzt verbinden

23.06.2006, aktualisiert 04.06.2008, 14705 Aufrufe, 11 Kommentare

Hi,

ich arbeite noch an einem Archivierungstool für Hardware etc.

So, ich habe diverse Tabellen erstellt für die jeweilige Komponente.
Z.B. tbl_Arbeitsspeicher

Diese Tabellen sind wie folgt aufgebaut

tbl_Arbeitsspeicher: RID , Seriennummer, RGroesse, RGeschwindigkeit

RID ist eine selbstkreiierte Zahl. Abhängig von der Anzahl der gefundenen Komponenten. Also bei 2 Speicherbausteinen ist die RID 0 und 1.
Die Seriennummer ist die Systemseriennummer und die Geschwindigkeit die Geschwindikeit des Rams.

RID und Seriennummer ergeben den Primary Key!

Die Tabelle mit einigen Beispieldaten sieht dann ca. so aus:

01.
 
02.
RID   Seriennummer     RGroesse       RGeschwindkeit 
03.
0       012345             256            400 
04.
1       012345             256            400 
05.
0       543210             128            266 
06.
1       543210             256            266 
07.
0       098765             512            400 
08.
1       098765             512            400 
09.
2       098765             512            400 
10.
3       098765             512            400 
11.
 
Nun, wenn ich einen Bericht erstelle erstellt er natürlich für jeden Datensatz einen Bericht. In dem obigen Fall also 8 Berichte.

Er soll aber nur 3 Erstellen. Also möchte ich die zusammengehörigen Datensätze addieren.

Also habe ich eine Abfrage erstellt die mir erst mal alle ausgibt wo die RID 0 ist, eine Abfrage für 1 usw. bis RID = 3
Diese Abfragen habe ich in einer erneuten Abfrage zusammengefasst. Nun gibt er mir nur den Datensatz aus mit der 098765. Dies aber korrekt mit 2048 MB. Aber die anderen Datensätze fallen raus. Logisch, wenn ich bis RID 1 gehe gibt er mir die ersten beiden aus.

Eine weitere Abfrage habe ich gemacht in der RID >= 0 ist und da ist das Ergebnis quasi das gleiche.

Ich weiss einfach nicht wie ich es schaffe, dass die Tabelle so aussieht

01.
Seriennummer     RGroesse     RGeschwindkeit 
02.
012345            512          400 
03.
543210            384          266 
04.
098765            2048         400 
05.
 
Jemand eine Idee?
Mitglied: Biber
23.06.2006 um 13:59 Uhr
Moin Xaero1982,

SELECT distinct Seriennummer, First(RGroesse), First(RGeschwindkeit)
from tbl_Arbeitsspeicher
Group by Seriennummer;

Gruß
Biber
Bitte warten ..
Mitglied: Xaero1982
23.06.2006 um 14:05 Uhr
Leider nein, Biber :/

Ergebnis:

01.
 
02.
Seriennummer   Expr1   Expr2 
03.
012345          256      400 
04.
543210          256      266 
05.
098765          512      400 
06.
 
EDIT: Ich habs

01.
SELECT DISTINCT tbl_Arbeitsspeicher.Seriennummer,sum(tbl_Arbeitsspeicher.RGroesse) AS Summe, First(tbl_Arbeitsspeicher.RGeschwindigkeit) 
02.
FROM tbl_Arbeitsspeicher 
03.
GROUP BY tbl_Arbeitsspeicher.Seriennummer; 
04.
 
Thx a lot Biber
Bitte warten ..
Mitglied: Xaero1982
23.06.2006 um 14:16 Uhr
Wo wir schon mal dabei sind:

Selbiges Problem, aber brauche anderes Ergebnis:

tbl_Maus: MID, Seriennummer, MHersteller, MBeschreibung, MTastenzahl

01.
0   12345   xyz   xyz123   3 
02.
1   12345   abc   abc123   3 
03.
0   54321   xyz   xyz123   3 
04.
1   54321   abc   abc123   3 
05.
 
Hierbei wird ein mal die Maus ausgegeben und eine mal das USB-HID.

Wieder werden beim Bericht 2 erzeugt und nicht einer :/.
Hier kann ich natürlich nichts addieren, sondern müsste quasi in einem Bericht 2 Datensätze abarbeiten oder diese aneinanderketten oder sonstwas. Keine Ahnung
Bitte warten ..
Mitglied: Biber
23.06.2006 um 14:25 Uhr
Na dann neuer Versuch (ungetestet)
01.
Select distinct Seriennummer, 
02.
    first(MHersteller) as Herst1 
03.
    last(MHerstelller) as Herst2, 
04.
    first(MBeschreibung) as Text1, 
05.
    last(MBeschreibung) as Text2 
06.
from tbl_maus 
07.
group by seriennummer;
....wenn es denn immer max. zwei sind.

Gruß
Biber
Bitte warten ..
Mitglied: Xaero1982
23.06.2006 um 16:03 Uhr
...
du bist ein Engel

Auch wenn der HersteLLLer mich erst irritiert hat und ich so weit weg sitze, dass ich nicht gesehen habe das es 3 L's sind und er immer nen Wer haben wollte

Wenn es mehr sind ? Was dann?
Bitte warten ..
Mitglied: Biber
23.06.2006 um 16:10 Uhr
Merkwürdig,
das probier ich doch gleich mal.
Laut M$ Technet http://www.microsoft.com/technet/prodtechnol/sql/70/reskit/part11/sqc18 ...

gibt es First() und Last() durchaus bei MS-ACCESS-SQL.

Bei Deinem Problem kannst Du ja aber auch auf Min() und Max() ausweichen.

Gruß
Biber
[Edit]
Uppps, jetzt hast Du mich überholt - war noch die Antwort auf Dein "Last() gibbet nit"

Wenn es mehr Hersteller sind, dann... hm, dann willst Du quasi eine Pivot-Tabelle haben mit n-Hersteller-Spalten...? *grübel*...

Ach, sag einfach Bescheid, wenn es soweit ist, aber frühestens Montag... ich muss mal langsam ins WE
[/Edit]
Bitte warten ..
Mitglied: Xaero1982
24.06.2006 um 13:31 Uhr
hehe, ja da war ich schneller

der hat den Fehler bei Last() angezeigt, weil da der HersteLLLer gestanden hat und ich das übersehen habe

Naja PivotTabelle noch nie mit gearbeitet :/

Ich habe leider auch keine weiteren Daten, da mein Ausbilder es nicht gebacken bekommen hat das Skript als Startskript einzubinden. Ergo habe ich nur 4 Datensätze bzw Daten von 4 PC's.

Bin erst am .. naja übernächste Woche im Betrieb.
Bitte warten ..
Mitglied: Xaero1982
03.07.2006 um 11:06 Uhr
Nun, also das mit der Abfrage von mehreren "Mäusen" hat dann natürlich einen Bug.

Bei nur einem Gerät ist First = Last. D.h. es wird 2 mal ausgegeben bzw. 2 mal steht das gleiche da :/

Soll natürlich nur ein mal sein, also müsste es theoretisch variabel sein. Für 1,2,3 ... n.

Idee?
Bitte warten ..
Mitglied: DaDudeness
04.06.2008 um 13:07 Uhr
Hallo zusammen,

habe diesen alten Thread ausgegraben, da er ziemlich gut zu meinem Problem paßt.

Ich habe eine Tabelle (Kunde), bei denen die Kundennummer (Spalte "Kunde") mehrmals auftaucht. Einmal
sind Werte in Spalte "Anschluss" und einmal Werte in Spalte "Anschluss2" gesetzt.

Beispiel:
01.
Kunde | Anschluss | Anschluss2 
02.
10             10 
03.
10                          10
Ich möchte einen Query erstellen, der die Spalten "Kunde", "Anschluss" und "Anschluss2" ausgibt und
die Kundennummer nur einmal enthält.

Also:
01.
Kunde | Anschluss | Anschluss2 
02.
10             10           10
Wenn ich folgenden Query nach obigem Beispiel ausführen will, bekomme ich die Meldung, daß ich eine
Abfrage ausführen wollte, die den angegebenen Ausdruck 'Kunde' nicht als Teil der Aggregatsfunktion
einschließt.

01.
SELECT DISTINCT test3.Kunde, sum(test3.Anschluss), sum(test3.Anschluss2) 
02.
FROM test3;
Kann mir jemand helfen, wie ich das Problem in den Griff kriegen kann?
Würde mich sehr freuen

Lieber Gruß
Bitte warten ..
Mitglied: Biber
04.06.2008 um 13:57 Uhr
Moin DaDudeness,

versuche es mit der Max()-Funktion.
01.
SELECT test3.Kunde,  
02.
max(test3.Anschluss) as Anschluss1,  
03.
max(test3.Anschluss2) as Anschluss2 
04.
FROM test3 
05.
group bei test3.kunde;
Grüße
Biber
Bitte warten ..
Mitglied: DaDudeness
04.06.2008 um 15:10 Uhr
Hi Biber,

gaaaaaaanz vielen Dank, hat großartig funktioniert!

Lieber Gruß
Bitte warten ..
Ähnliche Inhalte
Datenbanken
Datensatz hinzufügen, nicht überschreiben Access
gelöst Frage von Dr.CornwallisDatenbanken19 Kommentare

Liebe Gemeinde, ich habe folgenden Code (bei Button klick): Wähle ich mit diesem Code einen anderen Wert im Kombifeld ...

Datenbanken
Datensatz mit 2 Felder anfügen Access
gelöst Frage von Dr.CornwallisDatenbanken2 Kommentare

Hallo, ich habe 2 Felder: 1. Kombifeld - PersNr zum auswählen 2. Textfeld - hier kann man beliebigen Text ...

Datenbanken
Access Datenbank wie am einfachsten Datensätze aufbereiten
Frage von Dr.CornwallisDatenbanken5 Kommentare

Liebe Gemeinde, ich brauche eure Hilfe, wie würdet ihr in Access 2010 eine Datenbank aufbauen bzw. die ug. Anforderungen ...

VB for Applications
Access Datensätze einzeln kopieren einfügen
gelöst Frage von QwertzuiopueVB for Applications3 Kommentare

Hallo Hallo, also ich habe eine Datenbank A mit Pfad PfadA und eine Datenbank B mit PfadB. Ich möchte ...

Neue Wissensbeiträge
Erkennung und -Abwehr

Necur-Botnet soll Erpressungstrojaner Scarab massenhaft verbreiten

Information von BassFishFox vor 8 StundenErkennung und -Abwehr

12,5 Millionen Spam-Mails aus einem Bot-Netz mit 6 Millionen Computern? Eigentlich eine schwache Leistung. Die Erpresser setzen dabei auf ...

Microsoft

Nadeldrucker-Problem unter Windows - Microsoft liefert Updates

Information von BassFishFox vor 8 StundenMicrosoft

Hat ja nicht lange gedauert. Nachdem die November-Updates für Windows 7, 8.1 und 10 zahlreiche Nadeldrucker lahmgelegt hatten, stellt ...

Linux

Limux-Ende in München: Wie ein Linux Projekt unter Ausschluss der Öffentlichkeit zerstört wurde

Information von Frank vor 16 StundenLinux14 Kommentare

Mein persönlicher Kommentar zum Thema "Limux-Ende". Die SPD-Politikerin Anne Hübner hat die Richtung von München ganz klar definiert: "Wir ...

Batch & Shell

Open Object Rexx: Eine mittlerweile fast vergessene Skriptsprache aus dem Mainframebereich

Information von Penny.Cilin vor 1 TagBatch & Shell9 Kommentare

Ich kann mich noch sehr gut an diese Skriptsprache erinnern und nutze diese auch heute ab und an noch. ...

Heiß diskutierte Inhalte
Windows Server
Kann man im KMS nachschauen , wieviele Clients den Key in Anspruch genommen haben
gelöst Frage von rainergugusWindows Server15 Kommentare

Hallo, wir haben einen KMS Windows 10 Key. Dieser ist ja W7 kompatibel. Aber unser Windows 7 Pool registriert ...

Linux
Limux-Ende in München: Wie ein Linux Projekt unter Ausschluss der Öffentlichkeit zerstört wurde
Information von FrankLinux14 Kommentare

Mein persönlicher Kommentar zum Thema "Limux-Ende". Die SPD-Politikerin Anne Hübner hat die Richtung von München ganz klar definiert: "Wir ...

Router & Routing
Zwei Netzwerke erstellen
Frage von bunteblumeRouter & Routing14 Kommentare

Hallo Zusammen, Ich möchte gerne ein backup von einem bestimmten Folder welcher auf dem Server regelmässig synchronisiert wird auf ...

Off Topic
Fachkräftemangel in Deutschland? - Talentschmiede schreibt alle 2 Tage die gleichen Stellen aus
Frage von Penny.CilinOff Topic12 Kommentare

Hallo, haben wir in Deutschland Fachkräftemangel? Die Talentschmiede schreibt gefühlt alle zwei Tage dieselben Stellen aus. Und das schon ...