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

Passende SELECT-Abfrage gesucht

Frage Entwicklung Datenbanken

Mitglied: DonChunior

DonChunior (Level 1) - Jetzt verbinden

28.01.2015 um 08:27 Uhr, 994 Aufrufe, 8 Kommentare, 1 Danke

Hallo liebe Datenbank-Admins,

ich habe diese Frage bereits in einem anderen Forum gestellt.
Da sich dort aber überwiegend CAD-Anwender aufhalten, hielt ich es für sinnvoll, die Frage noch woanders zu stellen.
Sorry also für den Doppel-Post!

Nun zum Thema ...

Ich dachte erst, es wäre eine einfache Aufgabenstellung, jedoch konnte ich bisher keine passende Lösung finden.

Gegeben sei folgende Tabelle namens Dokumente:

+------------+--------------+---------+ 
| DokumentNr | ErstellDatum | Sprache | 
+------------+--------------+---------+ 
| 1          | 2015-01-28   | de      | 
+------------+--------------+---------+ 
| 1          | 2015-01-28   | en      | 
+------------+--------------+---------+ 
| 1          | 2015-01-27   | de      | 
+------------+--------------+---------+ 
| 1          | 2015-01-26   | en      | 
+------------+--------------+---------+ 
| 1          | 2015-01-01   | fr      | 
+------------+--------------+---------+ 
| 2          | ...          | ...     | 
+------------+--------------+---------+ 
| ...        | ...          | ...     | 
+------------+--------------+---------+
Ich benötige nun eine Abfrage, die mir folgendes Ergebnis liefert:
Alle aktuellen (d. h. das neueste Datum) Dokumente des Dokuments mit der Nummer 1, von all seinen verfügbaren Sprachen.

Das Dokument mit der Nummer 1 gibt es in den Sprachen de, en und fr. Von de und en gibt es zwei, davon möchte ich jeweils das neueste.
Das erwartete Ergebnis des SELECTs wäre somit folgendes:


+------------+--------------+---------+ 
| DokumentNr | ErstellDatum | Sprache | 
+------------+--------------+---------+ 
| 1          | 2015-01-28   | de      | 
+------------+--------------+---------+ 
| 1          | 2015-01-28   | en      | 
+------------+--------------+---------+ 
| 1          | 2015-01-01   | fr      | 
+------------+--------------+---------+
Aber wie muss nun die SELECT-Abfrage aussehen, so dass ich das gewünschte Ergebnis erhalte?

Gruß, DonChunior
Mitglied: ITvortex
28.01.2015, aktualisiert um 08:47 Uhr
Hallo,

ungetestet
01.
SELECT * FROM Dokumente WHERE ErstellDatum = (SELECT MAX(ErstellDatum) FROM Dokumente) AND DokumentNr = 1;

Deine Ausgabe zu deinem gewünschten Ergebnis ist falsch!
Du schreibst das du das neueste (aktuellste) Datum haben willst, und da 2015-01-28 das aktuellste ist darf 2015-01-01 nicht vorkommen!

Liebe Grüße
ITvortex

PS: Vergiss das bitte, hab das mit den Sprachen überlesen
Bitte warten ..
Mitglied: Reinartz
28.01.2015 um 08:51 Uhr
Ich würde mal so starten

Select DokumentNr , Max(Erstelldatum) , Sprache from Dokumente
group by DokumentNr

und mich dann herantasten
guck mal hier : http://www.w3schools.com/sql/default.asp
da findest du eigentlich alle erklärungen
Bitte warten ..
Mitglied: DonChunior
28.01.2015 um 09:46 Uhr
Hallo ITvortex,

leider führt deine SELECT-Abfrage nicht zu meinem gewünschten Ergebnis.
Die Sprache fr ist nicht im Ergebnis.

Gruß, DonChunior
Bitte warten ..
Mitglied: LianenSchwinger
LÖSUNG 28.01.2015, aktualisiert um 11:49 Uhr
Hallo DonChunior,

versuch mal

01.
SELECT b.DokumentNr, b.Sprache, max(b.ErstellDatum) AS ErstellDatum 
02.
FROM Dokumente AS b  
03.
WHERE b.DokumentNr = '1' 
04.
GROUP BY b.DokumentNr, b.Sprache
Wenn Du die WHERE-Bedingung weglässt bekommst Du für jede Dokumentennummer das jeweils neueste Sprachdukument.

G Jörg
Bitte warten ..
Mitglied: DonChunior
28.01.2015 um 10:19 Uhr
Hallo zusammen,

ich habe nun die Lösung für die Fragestellung:
01.
SELECT DokumentNr, MAX(ErstellDatum) AS ErstellDatum, Sprache FROM Dokumente WHERE DokumentNr=1 GROUP BY DokumentNr, Sprache
Interessanterweise kam der entscheidende Hinweis nun doch aus dem CAD-Anwenderforum (http://ww3.cad.de/foren/ubb/Forum376/HTML/000019.shtml#000002).

Gruß, DonChunior
Bitte warten ..
Mitglied: DonChunior
28.01.2015 um 10:25 Uhr
Hallo LianenSchwinger,

wenn man die WHERE-Bedingung vor's "GROUP BY" verschiebt, stimmt deine Lösung ebenfalls.

Gruß, DonChunior
Bitte warten ..
Mitglied: Reinartz
28.01.2015 um 10:35 Uhr
Aber das ist doch genau das was ich geschrieben habe nur das bei mir das sprache beim group by fehlte
und ich davon ausgegangen bin das du das ergebnis nicht nur für 1 dokumentnr haben willst
Bitte warten ..
Mitglied: LianenSchwinger
28.01.2015, aktualisiert um 11:51 Uhr
... war aus dem Bauch auf die Schnelle getippt. Passiert mir sonst nicht.

Habe es geändert.

Aber gut das Du die Lösung hast.

G Jörg
Bitte warten ..
Ähnliche Inhalte
Datenbanken
SELECT DISTINCT nur für eines der Felder in der Abfrage?
gelöst Frage von AdminKnechtDatenbanken5 Kommentare

Hallo, da ich nicht der DB-Guru bin und eine Abfrage erstellen muss hänge ich hier: Das Dataset sieht momentan ...

LAN, WAN, Wireless
Passender WLAN-AP gesucht
gelöst Frage von sigkillLAN, WAN, Wireless14 Kommentare

Hallo, ich möchte mein Ethernet per WLAN auf drei Nebengebäude erweitern. Dabei sollte es echtes "Ethernet over WLAN" sein, ...

Backup
Die passende Backup-Software gesucht!
Frage von DerKaiserBackup6 Kommentare

Hallo, erst einmal, ich bin ganz neu hier, von daher wäre ich dankbar, wenn ihr jedwede fachliche Abkrüzungen für ...

Router & Routing
Passender VPN-Router gesucht
Frage von puertoRouter & Routing8 Kommentare

Hallo liebe Gemeinde, ich habe für einen Kunden folgende Anforderungen: - VDSL-Router mit Vectoring-Unterstützung - soll an einem Telekom ...

Neue Wissensbeiträge
Internet

Was nützt HTTPS, wenn es auch von Phishing Web-Seiten genutzt wird

Information von Penny.Cilin vor 2 TagenInternet17 Kommentare

HTTPS richtig einschätzen Ob man eine Webseite via HTTPS aufruft, zeigt ein Schloss neben der Adresse im Webbrowser an. ...

Webbrowser

Bugfix für Firefox Quantum released - Installation erfolgt teilweise nicht automatisch!

Erfahrungsbericht von Volchy vor 4 TagenWebbrowser8 Kommentare

Hallo zusammen, gem. dem Artike von heise online wurde mit VersionFirefox 57.0.1 sicherheitsrelevante Bugs behoben. Entgegen der aktuellen Veröffentlichung ...

Sicherheit

Teamviewer Sessions können gekapert werden - Update tw. verfügbar

Information von sabines vor 4 TagenSicherheit6 Kommentare

In bestimmten Konstellationen können Teamviewer Sessions gekapert werden, wahrscheinlich aber ein recht unwahrscheinliches Szenario. Da der Teamviewer gerne für ...

Digitiales Fernsehen

Apple TV: Amazon Prime App ist verfügbar

Information von Frank vor 4 TagenDigitiales Fernsehen4 Kommentare

Die Amazon Prime Video App kann ab sofort auf einem Apple TV ab der 3 Generation installiert werden. Einfach ...

Heiß diskutierte Inhalte
Vmware
Installation Windows 10 VMware
Frage von Ghost108Vmware17 Kommentare

Hallo zusammen, versuche gerade mit Hilfe des vshpere clients eine virtuelle Windows 10 maschine aufzusetzen. 1. virtuelle Maschine erstellt ...

Exchange Server
SBS 2011 E-Mails können gesendet werden, aber nicht von extern empfangen
Frage von andreas1234Exchange Server14 Kommentare

Hallo Community, ich habe das Problem, dass seit knapp zwei Wochen die E-Mails von meinem SBS 2011 einwandfrei gesendet ...

Voice over IP
Telefonstörung - Ortsrufnummern kein Verbindungsaufbau
Frage von Windows10GegnerVoice over IP10 Kommentare

Hallo, sowohl bei uns als auch beim Opa ist es über VoIP nicht möglich Ortsrufnummern anzurufen. Es kommt nach ...

Windows Server
Server 2012 über Eingabeaufforderung devmgmt.msc geht nicht
gelöst Frage von achim222Windows Server9 Kommentare

Hallo, ich habe hier einen Server 2012 der im Reparaturmodus startet. Es liegt an einem falschen VirtIO Treiber für ...