Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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 doppelte Min-Abfrage

Frage Microsoft Microsoft Office

Mitglied: stevensqwe

stevensqwe (Level 1) - Jetzt verbinden

16.03.2010 um 01:08 Uhr, 6538 Aufrufe, 5 Kommentare

Hallo!
Stehe gerade tierisch auf dem Schlauch, wie ich eine doppelte Min-Abfrage unter Access hinbekomme und wäre über etwas Hilfe dankbar!

Folgendes Problem:
Tabelle A enthält 20 Spalten, unter denen auch die Spalten LotNumber, StartDate und StartTime sind.
Ich möchte mir nun in der Abfrage das kleinste Datum mit der kleinsten Zeit je LotNumber anzeigen lassen.

D.h. bei

LotNumber StartDate StartTime
123 19.01.2010 9:35
123 19.01.2010 10:45
123 20.01.2010 11:03
333 18.01.2010 8:00
333 19.01.2010 6:00

wäre das Ergebnis:

LotNumber StartDate StartTime
123 19.01.2010 9:35
333 18.01.2010 8:00

Mein Versuch gibt mir leider nur das Min Datum einer jeden LotNumber aus:

SELECT A.*
FROM LyoTable AS A INNER JOIN [SELECT B.[Lot Number], Min( B.[Start Date]) AS MinStartDate
FROM LyoTable AS B
GROUP BY B.[Lot Number]]. AS C ON (A.[Lot Number]=C.[Lot Number]) AND (A.[Start Date] = C.MinStartDate);

Könnte mir hier jemand weiterhelfen?

Schönen Dank und Gruß,
steven
Mitglied: KalleAtWork
16.03.2010 um 08:37 Uhr
Hi,

da Du ja nach dem Minimum der Kombination StartDate + StartTime haben willst musst Du das auch einsetzen. Das geht in diesem Fall recht einfach:

SELECT Tabelle4.LotNumber, Min([StartDate]+[StartTime]) AS Ausdr1
FROM Tabelle4
GROUP BY Tabelle4.LotNumber;
Bitte warten ..
Mitglied: stevensqwe
16.03.2010 um 14:20 Uhr
Hi, danke!

Wenn ich jetzt die ursprüngliche Datentabelle wieder aufgreife, und versuche, mir genau diese Datensätze komplett ausgeben zu lassen, dann verlangt er nach dem Parameterwert für StartDateTimeA... was mache ich falsch?

SELECT A.*, A.[Start Time] + A.[Start Date] AS StartDateTimeA
FROM LyoTable AS A INNER JOIN
(SELECT B.[Lot Number], Min(B.[Start Date]+B.[Start Time]) AS StartDateTimeB
FROM LyoTable AS B
GROUP BY B.[Lot Number]) AS C ON (A.[Lot Number]=C.[Lot Number]) AND (A.StartDateTimeA = C.StartDateTimeB);
Bitte warten ..
Mitglied: KalleAtWork
16.03.2010 um 15:20 Uhr
Also ich würde da drei Abfragen erstellen:

LyoTableA:
SELECT LyoTable.*, [StartDate]+[StartTime] AS StartDateTime
FROM LyoTable;

LyoTableB:
SELECT LyoTableA.[Lot Number], Min(LyoTableA.StartDateTime) AS MinvonStartDateTime
FROM LyoTableA
GROUP BY LyoTableA.[Lot Number];

LyoTableC:
SELECT LyoTableA.*
FROM LyoTableA INNER JOIN LyoTableB ON (LyoTableA.[Lot Number] = LyoTableB.[Lot Number]) AND (LyoTableA.StartDateTime = LyoTableB.MinvonStartDateTime);


Sollte auch mit zwei Abfragen gehen aber ob es mit nur einer geht weiß ich auch nicht. Bin mehr der Abfragenentwurfsrumklicker.
Bitte warten ..
Mitglied: Biber
16.03.2010 um 15:21 Uhr
Moin stevensqwe,

sach mal.... wie viele virtuelle Tabellen und Aliase willst du denn aus der einen verschnarchten LyoTable aufblasen?
zusätzlich zu A, B und C stünden dir zwar noch einige leicht zu merkende andere Alias-Buchstaben zur Verfügung, aber...

--> es gibt auch schönere Hobbies.

Versuch es erstmal mit zwei Aliasen.... dann bleibt dir noch ein bisschen Freizeit für anderes.
01.
SELECT A.* 
02.
 FROM LyoTable AS A ,  
03.
 (SELECT [Lot Number], Min([Start Time] + [Start Date]) AS StartDateTime 
04.
         FROM Lyotable  
05.
             GROUP BY [Lot Number] )  B 
06.
WHERE 
07.
 (A.[Lot Number] = B.[Lot Number] 
08.
AND   
09.
A.[Start Date]+ A.[Start Time]  = B.StartDateTime 
10.
);
A propos Freizeit - Für die Benamsung von Tabellenfelden mit "Start Time" und "Start Date" ( statt "StartTime" und "StartDate") etc, also mit "Deppen Leer Zeichen" hat irgendeiner eurer Praktikanten eine Runde Hoffegen verdient. Aber mit den Augenbrauen...

Siehst du, wie kryptisch und unleserlich schon eine Dünnbrett-Query mit 3 Feldern aussieht durch diese "[" und "]" -Füllsel?
Welches arme ohne eigenes Verschulden bei euch eingestellte Wesen soll denn so einen ###, vollkommen ### ### mal später pflegen?

Grüße
Biber
[edit] Upps... überschnitten. Mein Kommentar hat nichts mit Kalle@worx' Ansatz zu tun. [/edit]
Bitte warten ..
Mitglied: stevensqwe
16.03.2010 um 16:24 Uhr
Moin Biber, moin Kalle,
herzlichen Dank für Eure Hilfe!!!
Perfekte Lösung!
Viele Grüße
steven

PS: es gibt schönere Hobbies
Bitte warten ..
Ähnliche Inhalte
Sicherheit
VeraCrypt: Doppelte Passwort Abfrage? (4)

Frage von pelzfrucht zum Thema Sicherheit ...

Datenbanken
gelöst Access 2010 komplizierte Abfrage (3)

Frage von Dr.Cornwallis zum Thema Datenbanken ...

Datenbanken
gelöst Access 2010 Abfrage erster Werktag (10)

Frage von Dr.Cornwallis zum Thema Datenbanken ...

Neue Wissensbeiträge
Sicherheits-Tools

Sicherheitstest von Passwörtern für ganze DB-Tabellen

Tipp von gdconsult zum Thema Sicherheits-Tools ...

Peripheriegeräte

Was beachten bei der Wahl einer USV Anlage im Serverschrank

(7)

Tipp von zetboxit zum Thema Peripheriegeräte ...

Windows 10

Das Windows 10 Creators Update ist auf dem Weg

(6)

Anleitung von BassFishFox zum Thema Windows 10 ...

Administrator.de Feedback

Tipp: Ungelöste Fragen ohne Antwort in Tickeransicht farblich hinterlegen

Tipp von pattern zum Thema Administrator.de Feedback ...

Heiß diskutierte Inhalte
Windows Server
gelöst Update BackupExec 2015 auf 2016 führt zu SQL-Server Problem (16)

Frage von montylein1981 zum Thema Windows Server ...

Batch & Shell
gelöst Batch um Benutzer aus Sitzung abzumelden (15)

Frage von zeroblue2005 zum Thema Batch & Shell ...

Linux
gelöst Google Chrome startet nicht (12)

Frage von Thomas91 zum Thema Linux ...