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

Denksport Ermittlung von Differenzen mit SQL Abfragen

Frage Entwicklung Datenbanken

Mitglied: problemsolver

problemsolver (Level 2) - Jetzt verbinden

02.02.2011 um 12:07 Uhr, 5098 Aufrufe, 3 Kommentare

In einer Tabelle werden die Zählerstände von Druckern zu einem bestimmten Datum und ihrer Seriennummer erfasst. Zusätzlich auch noch der Zählerstandstyp (Farbe, Monochrom, gescannte Seiten). Durch welche Abfrage(n) kann man einen Verbrauch der jeweiligen Drucker in einem bestimmten Zeitraum sichtbar machen.

Hallo zusammen,

zu dem obigen Vorwort noch folgende Detailinformationen:

Die Tabelle hat die Felder
01.
Seriennummer (Des Gerätes) 
02.
Zaehlerstand_Datum (Datum des abgelesenen Zählerstandes) 
03.
Zaehlerstand (absoluter Zählerstandswert) 
04.
Zaehlerbezeichnung (M,F,S)
Egal wie ich es in Access drehe und wende, ich erhalte keine sinnvollen Ergebnisse , wenn ich mit Min, Max, First oder Last bei Datumsangaben arbeite. Ich habe einen Denkfehler, bei dem ich schon seit Tagen hänge und ihr seid meine letzte Hoffnung.

Folgende gedankliche Vorgehensweise hatte ich bisher:
1. Filtern des Zählerstandstyps (m,f oder s für monochrom, farbe oder geScannte Seiten) zusammen mit der Seriennummer
2. Begrenzen dieser Ausgabe auf einen bestimmten Datumsbereich:Zaehlerstand_Datum >= [Anfangsdatum] und <= [Enddatum]
3. Ermitteln des Zählerstandes abhängig von der Seriennummer zu dem MAXDATUM in dem Datumsbereich und zu dem MINDATUM in dem Datumsbereich
4. Ermitteln der Differenz zwischen MAXDATUM und MINDATUM

Mit ist bewusst, dass es ein Leichtes wäre eine Funktionin VB zu programmieren, aber ich möchte es partout als Abfrage mit den gegebenen Funktionen des DBMS realisieren.

Viel Spaß beim Lösen dieser Aufgabe
Ich bin gerne bereit so 3,33€ per PayPal an den Ersten zu zahlen, der es löst sofern euch das anspornt ;-D

Gruß

Markus
Mitglied: MadMax
02.02.2011 um 13:22 Uhr
Hallo Markus,

weil Du es als Denksportaufgabe deklariert hast und ohne konkretes DBMS, habe ich hier mal eine Lösung für den SQL Server. Dabei gehe ich davon aus, daß auch eine eindeutige ID in der Tabelle ist.
01.
select	d.Seriennummer, d.Zaehlerbezeichnung, s.Zaehlerstand as Zaehlerstand_Start, e.Zaehlerstand as Zaehlerstand_Ende, e.Zaehlerstand - s.Zaehlerstand as Verbrauch 
02.
from	(select distinct Seriennummer, Zaehlerbezeichnung from Druckertabelle) d 
03.
	join Druckertabelle s on s.ID = (select top (1) ID from Druckertabelle where Seriennummer = d.Seriennummer and Zaehlerbezeichnung = d.Zaehlerbezeichnung and Zaehlerstand_Datum >= <STARTDATUM> order by Zaehlerstand_Datum) 
04.
	join Druckertabelle e on e.ID = (select top (1) ID from Druckertabelle where Seriennummer = d.Seriennummer and Zaehlerbezeichnung = d.Zaehlerbezeichnung and Zaehlerstand_Datum <= <ENDDATUM> order by Zaehlerstand_Datum desc)
Gruß, Mad Max
Bitte warten ..
Mitglied: problemsolver
02.02.2011 um 14:17 Uhr
Hallo Mad Max,

Vielen Dank für deine Lösung un du hast Recht: Es ist eine Denksportaufgabe, da eigentlich das DBMS keine Rolle spielt.
Falls Du es trotzdem zur Hand hast: Ich würde gerne die Lösung für ACCESS wissen.

Davon ab hast Du natürlich mit deiner Lösung recht, so wie ich das beurteilen kann... Schick mir bitte per PN deine paypal Adresse, damit ich dir das versprochene Geld zukommen lassen kann. Kannst ja im Kommentar antworten, wenn Du es erhalten hast. Ich halte mein Wort...

Gruß

Markus
Bitte warten ..
Mitglied: MadMax
02.02.2011 um 14:42 Uhr
Hai Markus,

Access hab ich hier leider nicht zur Verfügung, erst am Montag wieder, aber ich meine, das SQL in Access ist ziemlich an das vom SQL Server angelehnt. Dementsprechend könnte das auch in Access klappen. Jedenfalls fällt mir nichts auf, was Access nicht auch schlucken sollte.

Zu den 3,33€: Da ich kein Paypal besitze, spende es doch an die Organisation bedürftiger SQL-Programmierer. Oder dem Wirt Deiner Stammkneipe, vielleicht gibt er Dir ja noch ein kleines Bierchen dafür ;)

Gruß, Mad Max
Bitte warten ..
Ähnliche Inhalte
Datenbanken
MySQL - Ermittlung von Elternelemente innerhalb einer Abfrage
gelöst Frage von mabue88Datenbanken2 Kommentare

Hallo, hier das ERM einer Datenbank: Darin gibt es beliebig viele Datensätze in der Tabelle "gruppen". Jedem dieser Datensätze ...

PHP
Abfrage SQL
gelöst Frage von dudeldoedelPHP3 Kommentare

Hallo zusammen, kann man das in einer SQL Abfrage erreichen ??? Feldwert lautet: {"565":{"textinput":{"comment":"1400"}}} als Ergebnis soll ausgelesen werden ...

Datenbanken
Hilfe bei SQL Abfrage
gelöst Frage von e51bomagDatenbanken9 Kommentare

Habe einfach eine Denkblockade und würde mich über Hilfe bei einer Datenbankabfrage freuen. Die Abfrage lautet wie folgt: SELECT ...

Windows Server
SQL Abfrage automatisch exportieren
Frage von Andinistrator1Windows Server6 Kommentare

Hallo Zusammen, kurz und knapp: Ich habe eine SQL Abfrage. Diese soll automatisch, z.B. per Agend 1x/Nacht ausgeführt werden. ...

Neue Wissensbeiträge
MikroTik RouterOS

Mikrotik - Lets Encrypt Zertifikate mit MetaROUTER Instanz auf dem Router erzeugen

Anleitung von colinardo vor 4 StundenMikroTik RouterOS4 Kommentare

Einleitung Folgende Anleitung ist aus der Lage heraus entstanden das ein Kunde auf seinem Mikrotik sein Hotspot Captive Portal ...

Sicherheit

Sicherheitslücke in HP-Druckern - Firmware-Updates stehen bereit

Information von BassFishFox vor 4 StundenSicherheit

Ein weiterer Grund, dass Drucker keinerlei Verbindung nach "auswaerts" haben sollen. Unter Verwendung spezieller Malware können Angreifer aus der ...

Administrator.de Feedback

Entwicklertagebuch: Die Startseite wurde überarbeitet

Information von admtech vor 7 StundenAdministrator.de Feedback6 Kommentare

Hallo Administrator User, mit dem Release 5.7 haben wir unsere Startseite überarbeitet und die Beiträge und Fragen voneinander getrennt. ...

Vmware

VMware Desktopprodukte sind verwundbar

Information von Penny.Cilin vor 11 StundenVmware

Die VMware-Anwendungen zum Umgang mit virtuellen Maschinen Fusion, Horizon Client und Workstation sowie die Plattform NSX sind verwundbar. Davon ...

Heiß diskutierte Inhalte
Visual Studio
Vb.net-Tool zum Erzeugen einer Outlook-E-Mail
Frage von ahstaxVisual Studio24 Kommentare

Hallo, ich möchte gerne ein vb.net-Tool schreiben, das am Ende eine Outlook-E-Mail erzeugt. Grundsätzlich ist mir klar, wie das ...

Windows Netzwerk
Netzwerk Neustrukturierung
Frage von IT-DreamerWindows Netzwerk16 Kommentare

Hallo verehrte Community und Admins, bei uns im Haus steht eine Neustrukturierung an. Dafür benötige ich von euch ein ...

Windows Server
RDP macht Server schneller???
Frage von JaniDJWindows Server16 Kommentare

Hallo Community, wir betrieben seit geraumer Zeit diverse virtuelle Maschinen und Server mit Windows Server 2012. Leider haben wir ...

Windows 10
Windows 10 dunkler Bildschirm nach Umfallen
Frage von AkcentWindows 1015 Kommentare

Hallo, habe hier einen Windows 10 Rechner der von einem User umgefallen wurde (Beine übers Knie, an den PC ...