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

Problem mit Erstellung einer View

Mitglied: SachsenHessi

SachsenHessi (Level 1) - Jetzt verbinden

14.09.2018 um 13:46 Uhr, 231 Aufrufe, 6 Kommentare

Hallo @All,

ich finde für folgendes Problem keine Lösung:
Gegeben ist eine Tabelle mit zwei Spalten ([ObjektID] als Integer, [TermineEVT] als Datetime).
Gesucht werden die letzten zwei [TermineEVT] zu einer [ObjektID] als Spalten (für die Berechnung von Differenzen).
Also rauskommen sollte Etwas in der Form:
[ObjektID] [LetztesDatum] [VorletztesDatum]
folgendes Statement würde das liefern:
01.
	SELECT TOP 1 ObjektID, MAX(EVT) AS LetztesDatum, 
02.
                             (SELECT        MAX(EVT) AS MaxVonEVT 
03.
                               FROM            dbo.TermineEVT AS i 
04.
                               WHERE        (ObjektID = o.ObjektID) AND (EVT < o.EVT)) AS VorletztesDatum 
05.
	FROM dbo.TermineEVT AS o 
06.
	WHERE objektid = 2121 
07.
	GROUP BY ObjektID, EVT 
08.
        ORDER BY LetztesDatum DESC
Ergebnis:
t1_2018-09-14_132008 - Klicke auf das Bild, um es zu vergrößern
Leider könnte ich das nur ObjektID für ObjektID erledigen (ginge evtl. über eine UDF).
Ich benötige aber eine View mit allen Objekten.

Mit
01.
	SELECT ObjektID, MAX(EVT) AS LetztesDatum, 
02.
                             (SELECT        MAX(EVT) AS MaxVonEVT 
03.
                               FROM            dbo.TermineEVT AS i 
04.
                               WHERE        (ObjektID = o.ObjektID) AND (EVT < o.EVT)) AS VorletztesDatum 
05.
	FROM dbo.TermineEVT AS o 
06.
	GROUP BY ObjektID, EVT 
07.
       ORDER BY objektID, LetztesDatum DESC
bekomme ich nur:
t2_2018-09-14_132804 - Klicke auf das Bild, um es zu vergrößern
Ich benötige jedoch nur die gelb markierten Zeilen. Also den Datensatz zu jeder ID mit der MAX(LetztesDatum)

Ich kriege es ums verr... nicht gebacken.
Hat jemand von Euch eine Idee ? (Und ja, ich habe Tante google befragt, aber die Frage war wohl falsch gestellt.)
Zielsystem wäre MS-SQL2014.
Vielen Dank im Voraus
Frank
Mitglied: emeriks
14.09.2018 um 15:07 Uhr
Hi,
Leider könnte ich das nur ObjektID für ObjektID erledigen (ginge evtl. über eine UDF).
Versuche mal, zu ersetzen:
Statt
01.
WHERE objektid = 2121
01.
WHERE objektid IN (SELECT DISTINCT ObjektID FROM dbo.TermineEVT)
Bitte warten ..
Mitglied: SachsenHessi
14.09.2018, aktualisiert um 15:32 Uhr
Hallo @emeriks,

hat leider den selben Effekt wie:
01.
	SELECT ObjektID, MAX(EVT) AS LetztesDatum,  
02.
                             (SELECT        MAX(EVT) AS MaxVonEVT  
03.
                               FROM            dbo.TermineEVT AS i  
04.
                               WHERE        (ObjektID = o.ObjektID) AND (EVT < o.EVT)) AS VorletztesDatum  
05.
	FROM dbo.TermineEVT AS o  
06.
	GROUP BY ObjektID, EVT  
07.
        ORDER BY objektID, LetztesDatum DESC
Das ich den gewünschten DS bekomme bei:
01.
	 
02.
SELECT TOP 1 ObjektID, MAX(EVT) AS LetztesDatum,  
03.
                             (SELECT        MAX(EVT) AS MaxVonEVT  
04.
                               FROM            dbo.TermineEVT AS i  
05.
                               WHERE        (ObjektID = o.ObjektID) AND (EVT < o.EVT)) AS VorletztesDatum  
06.
	FROM dbo.TermineEVT AS o  
07.
	WHERE objektid = 2121  
08.
	GROUP BY ObjektID, EVT  
09.
        ORDER BY LetztesDatum DESC
liegt ja am TOP 1 . Das mir im Prinzip den gewünschten DS "filtert".
Trotzdem vielen Dank für Deine Mühe.
Frank
Bitte warten ..
Mitglied: emeriks
14.09.2018, aktualisiert um 16:25 Uhr
Möglicherweise so?

01.
SELECT  ObjektID, [EVT] AS LetztesDatum, 
02.
                             (SELECT        MAX([EVT]) AS MaxVonEVT 
03.
                               FROM            [TermineEVT] AS T3 
04.
                               WHERE        (T3.ObjektID = T1.ObjektID) AND (T3.[EVT] < T1.[EVT])) AS VorletztesDatum 
05.
	FROM [TermineEVT] AS T1 
06.
	WHERE [EVT] IN (SELECT TOP 1 Max(EVT) FROM [TermineEVT] AS T2 WHERE T2.ObjektID = T1.ObjektID) 
07.
 
Edit: Doch, das sollte funktionieren.
Bitte warten ..
Mitglied: SachsenHessi
14.09.2018 um 19:23 Uhr
Danke @emriks,
das werde ich Montag mal testen.
Bis dahin schönes WE.
LH
Frank
Bitte warten ..
Mitglied: SachsenHessi
17.09.2018 um 08:22 Uhr
Hallo @emeriks,

klappt leider auch nicht
t3_2018-09-17_081837 - Klicke auf das Bild, um es zu vergrößern

Da komme ich wohl um eine UDF nicht herum

Trotzdem vielen dank für Deine Mühe
Frank
Bitte warten ..
Mitglied: emeriks
17.09.2018 um 08:44 Uhr
Hm, OK. Schade für Dich.
Ich habe sowas ähnliches auch vor ein paar Monaten gebraucht. Dies hatte ich am Freitag einfach adaptiert. Beim Test an einer ähnlichen Tabelle bei mir funktioniert das so ...
Bitte warten ..
Ähnliche Inhalte
VB for Applications

Problem bei der Erstellung eines Regulären Ausdruckes

gelöst Frage von spawny2407VB for Applications2 Kommentare

Hallo liebe Gemeinde, habe ein nicht endendes Problem. Da ich auf dem Gebiet der Regulären Ausdrucke sehr neu bin, ...

Peripheriegeräte

Barcode Erstellung Problem

Frage von Data61Peripheriegeräte11 Kommentare

Hallo zusammen, hänge bei einen Problem fest, dass sicher eine einfache Lösung haben könnte. Habe mit dem Zebra Designer ...

Vmware

Horizon View Problem USB Redirect USB2

Frage von UweRehbergVmware4 Kommentare

Hallo zusammen, wir haben ein Problem mit der USB-Weiterleitung von den physischen Clients an die virtuellen Desktops. Wenn wir ...

CPU, RAM, Mainboards

IAMT KVM-Zugriff (RADMIN-Viewer, VNC-Viewer, . )

gelöst Frage von moar70CPU, RAM, Mainboards7 Kommentare

Hallo! Ich habe auf meiner TAROX-Workstation (Mainboard Fujitsu D3128 B2) iAMT (Version ME 8.1.40.1416) konfiguriert. Der Webzugriff mittels funktioniert, ...

Neue Wissensbeiträge
E-Mail
Email-Apps und Verhalten bei Pop3
Erfahrungsbericht von kfranzk vor 9 StundenE-Mail3 Kommentare

Hallo Freunde, da mir mein diesbezüglicher Faden als gelöst markiert wurde, muss ich hier neu aufsetzen. Ich arbeite bewusst ...

Hyper-V

Optimiertes Ubuntu per Microsoft Hyper-V-Schnellerstellung verfügbar

Anleitung von Frank vor 10 StundenHyper-V

Für Microsofts Virtualisierungssoftware Hyper-V ist ab sofort auch ein optimiertes Ubuntu 18.04.1 LTS verfügbar. In der "Hyper-V-Schnellerstellung" App, die ...

Sicherheits-Tools

Trend Micro WorryFree Business Security (WFBS) 10 - neuer Patch 1470 verfügbar

Tipp von VGem-e vor 14 StundenSicherheits-Tools1 Kommentar

Servus, mal sehen, ob mit Patch 1470, zu finden unter dann die angeblich fehlerhafte Funktion, die unter W10 im ...

Server-Hardware

Lösung für Ersatz eines defekter Raid-Controllers

Anleitung von wellknown vor 1 TagServer-Hardware3 Kommentare

Hallo, da ich nichts gefunden habe und selbst eine Lösung brauchte, hier eine kleine Anleitung für alle die vor ...

Heiß diskutierte Inhalte
Windows Server
Mit der alten Domäneprofil anmelden ohne Server
gelöst Frage von SyosseWindows Server37 Kommentare

Hallo Jungs Folgendes Szenario: Ich habe bei einem sehr kleinen Unternehmen (2Personen) den Server migriert, soweit hat alles geklappt. ...

Sicherheits-Tools
Virenprogramm lässt Programme nicht starten
Frage von SurferGirlSicherheits-Tools23 Kommentare

Hallo, ich bin neu hier, ich hoffe ich habe die richtige Rubrik gewählt. Falls nicht, tut es mir leid. ...

Windows Server
Kann DNS-Einträge nicht finden
gelöst Frage von BPeterWindows Server19 Kommentare

Hallo, wenn ich folgenden Befehl absetze, bekomme ich eine Liste zurück mit allen Einträgen der DNS-Zone. Wenn ich aber ...

Windows Server
SQL Server Instanz (Eplan) auf WIN 2008 RC2 Server frisst RAM ohne Limit
Frage von derinderinderinWindows Server17 Kommentare

Hallo Zusammen, Wir haben hier einen Windows 2008 RC2 Server. Darauf läuft ein SQL Server Express 2014 Version 12.0.4232.0. ...