MS-Office-Forum

Zurück   MS-Office-Forum > Microsoft Access & Datenbanken > SQL
Registrieren Forum Hilfe Alle Foren als gelesen markieren

Banner und Co.

Antworten
Ads
Themen-Optionen Ansicht
Alt 10.01.2018, 11:49   #1
GünterD
Neuer Benutzer
Neuer Benutzer
Standard T-SQL : MSSQL 2012 - Nur jüngste Datensätze

Hallo Zusammen,

habe mal wieder eine etwas für mich knifflige SQL-Abfrage, mit der ich nur die aktuellsten Datensätze erhalten möchte, zusammengebastelt.

Zitat:

SELECT A.ID, A.iDMC, A.Datum, A.Kommentar, A.KommentarError, A.OPM
FROM dbo.ttbl_Daten AS A INNER JOIN
(SELECT OPM, MAX(Datum) AS [Max-Datum]
FROM dbo.ttbl_Daten AS B
GROUP BY OPM) AS C ON A.OPM = C.OPM AND A.Datum = C.[Max-Datum]
WHERE (A.iDMC = N'123')

Leider zeigt mir die Abfrage keine Datensätze an ('123'-Datensätze sind definitiv vorhanden).
Ohne die 'Where'-Bedingung bekomme ich nicht nur die aktuellen Datensätze.
Könnte mir bitte jemand einen Tipp geben?

Danke im Voraus.

__________________

Gruß Günter
GünterD ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 10.01.2018, 22:15   #2
hcscherzer
MOF Guru
MOF Guru
Standard

In der gejointen SubSelect definierst DU einen Alias ... verwendest ihn aber nicht. Vielleicht so:
Code:

SELECT A.ID, A.iDMC, A.Datum, A.Kommentar, A.KommentarError, A.OPM
FROM dbo.ttbl_Daten AS A INNER JOIN
 (SELECT B.OPM, MAX(B.Datum) AS MaxDat
  FROM dbo.ttbl_Daten AS B
  GROUP BY B.OPM) AS C ON A.OPM = C.OPM AND A.Datum = C.MaxDat
WHERE A.iDMC = N'123'

__________________

Freundlichen Gruß
Hans-Christian
-----------------------------------------
Oft erwünscht, selten beachtet: nach Erledigung des Problems den Thread als erledigt zu markieren
-----------------------------------------
Ich möchte nur Mitglied in einem Verein sein, der Leute wie mich nicht als Mitglied aufnimmt (Groucho Marx).
-----------------------------------------
Ab sofort regelmässig: MOF Stammtisch in Bremen. Näheres hier.
hcscherzer ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 11.01.2018, 05:26   #3
GünterD
Threadstarter Threadstarter
Neuer Benutzer
Neuer Benutzer
Standard 'B' löscht Manager

Hallo Hans-Christian,

das 'B' ist es nicht, da es von SQL-Manager selbst gelöscht wird, wenn ich es eintrage.
Sonst noch eine Idee?

__________________

Gruß Günter
GünterD ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 11.01.2018, 10:07   #4
hcscherzer
MOF Guru
MOF Guru
Standard

Code:

SELECT A.ID, A.iDMC, A.Datum, A.Kommentar, A.KommentarError, A.OPM
FROM dbo.ttbl_Daten AS A 
WHERE A.iDMC = N'123'
Und hier werden Daten angezeigt?

__________________

Freundlichen Gruß
Hans-Christian
-----------------------------------------
Oft erwünscht, selten beachtet: nach Erledigung des Problems den Thread als erledigt zu markieren
-----------------------------------------
Ich möchte nur Mitglied in einem Verein sein, der Leute wie mich nicht als Mitglied aufnimmt (Groucho Marx).
-----------------------------------------
Ab sofort regelmässig: MOF Stammtisch in Bremen. Näheres hier.
hcscherzer ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 11.01.2018, 12:08   #5
GünterD
Threadstarter Threadstarter
Neuer Benutzer
Neuer Benutzer
Standard Daten vorhanden

ja, es werden Daten angezeigt.

__________________

Gruß Günter
GünterD ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 11.01.2018, 13:15   #6
hcscherzer
MOF Guru
MOF Guru
Standard

Und hier sicher auch:
Code:

SELECT OPM, MAX(Datum) AS MaxDat
  FROM dbo.ttbl_Daten
  WHERE iDMC = N'123'
  GROUP BY OPM
Aber wirklich auch alle, die in der Anweisung in #4 ausgegeben wurden?

__________________

Freundlichen Gruß
Hans-Christian
-----------------------------------------
Oft erwünscht, selten beachtet: nach Erledigung des Problems den Thread als erledigt zu markieren
-----------------------------------------
Ich möchte nur Mitglied in einem Verein sein, der Leute wie mich nicht als Mitglied aufnimmt (Groucho Marx).
-----------------------------------------
Ab sofort regelmässig: MOF Stammtisch in Bremen. Näheres hier.
hcscherzer ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 12.01.2018, 06:41   #7
GünterD
Threadstarter Threadstarter
Neuer Benutzer
Neuer Benutzer
Standard Nicht alle

Hallo Hans-Christian,

mit #6 werden nur die aktuellsten Datensätze aus #4 angezeigt. D.h. grundsätzlich ist dies der richtige Vorschlag von dir.
Ich habe nur eine Problem, da meine angegeben Abfrage nur Beispiele sind.´und ich bei der "richtigten" Abfrage zu viele Datensätze bekomme.

In der Anlage findest du eine Tabelle aus folgender Abfrage
Code:

SELECT        OPM, Datum, iDMC, SPCID, ArbeitsErgebnis, TeileID, PrüfMittel, Auftrag, OP, SPS_Datei, K0014, AG
FROM            dbo.ttbl_Daten
WHERE        (iDMC = N'002440600112018010822365804871')
GROUP BY OPM, iDMC, SPCID, ArbeitsErgebnis, TeileID, PrüfMittel, Auftrag, OP, SPS_Datei, Datum, K0014, AG
In der Tabelle sind die Datensätze, die ich letzendlich haben möchte gelb markiert.
Was muss ich in dieser SQL-Abfrage ergänzen um nur Datensätze mit der aktuellsten 'OPM' zu erhalten?
Angehängte Dateien
Dateityp: xlsx Beispiel.xlsx (11,8 KB, 1x aufgerufen)

__________________

Gruß Günter
GünterD ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Ads
Antworten


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Besucher: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge anzufügen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

vB Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist An.
Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:14 Uhr.


Partner und Co.
Access-Paradies -Alles rund um die Datenbank Microsoft Access -Code -Programme-Tools -Tipps   Kostenlose Tipps & Tricks, Downloads und Programme   www.kulpa-online.com - Tipps - Tricks - Tutorials - Meinungen - Downloads uvm...   vb@rchiv · Willkommen in der Welt der VB Programmierung   Access-Garhammer - Hier finden Sie jede Menge Beispiel-Datenbanken zu Access und mehr ...   mcseboard.de   Die Top Seite für Excel-VBA-Makros uvm.

Powered by: vBulletin Version 3.6.2 (Deutsch)
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

Copyright ©2000-2018 MS-Office-Forum. Alle Rechte vorbehalten.
Copyright ©Design: Manuela Kulpa ©Rechte: Günter Kramer
Eine Verwendung der Inhalte in anderen Publikationen, auch auszugsweise,
ist ohne ausdrückliche Zustimmung der Autoren nicht gestattet.