SuperMarios
-
Gesamte Inhalte
13 -
Benutzer seit
-
Letzter Besuch
Reputationsaktivitäten
-
SuperMarios reagierte auf Krissy in FIAE Winter 2019/2020 GANTT-Diagramm 2. HS ba
Mein Fail =D handelt sich ja um KW
-
SuperMarios reagierte auf Whiz-zarD in Frage zu SQL-Aufgabe WHERE Datumsangaben
SELECT ... FROM ... WHERE AufnahmeDatum < DATE '2020-03-01' AND EntlassDatum > DATE '2020-02-01' Es werden die weggefiltert, die nach dem Februar 2020 aufgenommen und die, die vor dem Februar 2020 entlassen worden sind. Übrig bleiben die, die in den Betten lagen.
Wenn es mit DATE nicht gemacht werden darf:
SELECT ... FROM ... WHERE (MONTH(AufnahmeDatum) < 3 AND YEAR(AufnahmeDatum) = 2020) AND (MONTH(EntlassDatum) >= 2 AND YEAR(EntlassDatum) = 2020)
-
SuperMarios reagierte auf Rienne in Frage zu SQL-Aufgabe WHERE Datumsangaben
Ein kleiner Fehler hat sich noch eingeschlichen: Beim Aufnahmedatum sollte das Jahr kleiner gleich 2020 sein und nicht nur gleich 2020.
Ich glaube DATE benötigt es im klassischen SQL gar nicht. Lediglich die Formatierung muss passen. D.h. die Abfrage müsste lauten:
SELECT ... FROM ... WHERE AufnahmeDatum <'2020-03-01' AND EntlassDatum >= '2020-02-01' Nachzulesen hier: https://www.w3schools.com/sql/sql_dates.asp
-
SuperMarios reagierte auf Whiz-zarD in Frage zu SQL-Aufgabe WHERE Datumsangaben
Stimmt. 😅
Auch das stimmt. Bin zu sehr Oracle geschädigt. Da schreibt man es mit DATE. 😅
-
SuperMarios reagierte auf Whiz-zarD in Frage zu SQL-Aufgabe WHERE Datumsangaben
Letzendlich ist alles eine Zahl.
Ich bin mir jetzt nicht so ganz sicher, ob es zum SQL-Standard gehört aber für gewöhnlich verwenden die RDBMS das ISO 8601-Fomat. Also YYYY-MM-DD. Für andere Formate muss man eine Konvertierung vornehmen. In Oracle DB z.B. die TO_DATE()-Funktion.
Wie das jetzt in der Abschlussprüfung bewertet wird, kann ich nicht sagen. Ist vermutlich auch unterschiedlich.
-
SuperMarios hat eine Reaktion von allesweg erhalten in Frage zu SQL-Aufgabe WHERE Datumsangaben
Danke für die Rückmeldung, nun denke ich nochmal...
Wir brauchen alle Patienten, welche im Februar 2020 ein Zimmer hatten. Es kann sein, dass jemand im Januar 2020 in die Klinik kommt und am 01. Februar 2020 entlassen wird, dann war er auch im Februar da. Oder das jemand am 29. Februar 2020 in die Klinik kommt und egal wann entlassen wird.
Also...
Wenn Aufnahmedatum im Februar 2020 ist (Monat Februar und Jahr 2020)
ODER
Wenn Entlassdatum im Februar 2020 ist (Monat Februar und Jahr 2020)
ODER
Wenn Aufnahmedatum vor dem Februar 2020 ist UND Entlassdatum nach dem Februar 2020
dann hatte der Patient ein Zimmer, oder?
-
SuperMarios reagierte auf Whiz-zarD in Frage zu SQL-Aufgabe WHERE Datumsangaben
Ist das nicht diese Aufgabe?
-
SuperMarios reagierte auf Rienne in Frage zu SQL-Aufgabe WHERE Datumsangaben
@Tobi_8 und was ist dann bei der Lösung mit Patienten, die z.B. am 1.1.2020 gekommen sind und am 31.4.2020 entlassen wurden?
-
SuperMarios reagierte auf MartinSt in Frage zu SQL-Aufgabe WHERE Datumsangaben
welches DBMS? Postgresql kennt netterweise ein "overlaps" für Date-Ranges. 😉
-
SuperMarios reagierte auf allesweg in Frage zu SQL-Aufgabe WHERE Datumsangaben
Im Februar anwesend heißt vor dem 1.3.2020 aufgenommen und nach dem 31.1.2020 entlassen.
-
SuperMarios reagierte auf Tobi_8 in Frage zu SQL-Aufgabe WHERE Datumsangaben
Eventuell mit LIKE ?
WHERE PatientenAufnahmeDatum LIKE '%.02.2021' AND PatientenEntlassDatum LIKE '%.02.2021' --> Patienten die im Februar aufgenommen und wieder entlassen wurden
-
SuperMarios reagierte auf allesweg in Frage zu SQL-Aufgabe WHERE Datumsangaben
Wie wäre es, wenn du die vollständige Aufgabenstellung inklusive vollständiger Tabelle postest? Dann können wir auch auf passende Lösungswege hinweisen und müssen nicht rätselraten.
-
SuperMarios reagierte auf Rienne in Frage zu SQL-Aufgabe WHERE Datumsangaben
Das! Wobei eben beachtet werden muss, dass es sich um zwei Datumsfelder handelt.
Aber so wäre es vermutlich am simpelsten.
Die Abfrage kann z.B. aber auch sein, dass ENTWEDER das Aufnahmedatum im Februar 2020 (Also das Jahr 2020 und der Monat Februar ist) liegt ODER ( das Aufnahmedatum vor dem 1.2.2020 liegt UND das Entlassungsdatum nach dem 31.1.2020 liegt)
So würde ich es zumindest machen! Bei SQL ist es aber wie bei vielen anderen Dingen auch: Viele Wege führen zum Ziel!