Abfrage Datum-Bereiche

Moderator: ModerationP

Abfrage Datum-Bereiche

Beitragvon smedic » 15. Sep 2018, 11:28

Hallo Acces-User,

ich bin mir sicher, dass mir hier in der Runde der Profis geholfen werden kann:

Folgende Tabelle habe ich angelegt:

ID | Person | Datum | Abteilung
-----------------------------------------
01 | Klaus | 01.01.18 | 3
32 | Klaus | 15.05.18 | 1
47 | Klaus | 05.10.19 | 5
usw.

Nun möchte ich per Referenzdatum (z. B. 13.07.18) per Abfrage die entsprechende Abteilung des Klaus (in diesem Beispiel = Abteilung 1) angezeigt bekommen.
Mir ist klar, dass ein zweites Datum (bis) die Abfrage via BETWEEN zu lösen wäre - jedoch sind meine Kolleg*Innen mit der Eingabe des zweiten Datums wohl überfordert...

Wäre für eine Lösung mit dieser Ein-Datum-Methode wirklich sehr dankbar.

MfG smedic
smedic
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 6
Registriert: 15. Sep 2018, 11:05

Re: Abfrage Datum-Bereiche

Beitragvon knobbi38 » 15. Sep 2018, 11:32

Hallo smedic,

wie bitte kommst du vom 13.7.2018 auf Klaus/Abtlg. 1 ? Kannst du das mal verbal beschreiben?

Ulrich
knobbi38
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 294
Registriert: 02. Jul 2015, 14:23

Re: Abfrage Datum-Bereiche

Beitragvon Gast » 15. Sep 2018, 12:35

Hallo Ulrich,

die Daten (Datum) beziehen sich auf das Datum, ab wann Klaus in der Abteilung X tätig ist (Verlauf seiner Tätigkeiten innerhalb der Firma).
Also seit 15.05.2018 ist er in der Abteilung 1 beschäftigt. Davor seit 01.01.2018 (bis einschließlich 14.05.2018) in der Abteilung 3.

Angefragt wird z. B. der 13.07.2018 (Stand) - in welcher Abteilung zu diesem Zeitpunkt Klaus seine arbeit vollzieht...

MfG smedic
Gast
 

Re: Abfrage Datum-Bereiche

Beitragvon smedic » 15. Sep 2018, 12:38

Hallo Ulrich,

die Daten (Datum) beziehen sich auf das Datum, ab wann Klaus in der Abteilung X tätig ist (Verlauf seiner Tätigkeiten innerhalb der Firma).
Also seit 15.05.2018 ist er in der Abteilung 1 beschäftigt. Davor seit 01.01.2018 (bis einschließlich 14.05.2018) in der Abteilung 3.

Angefragt wird z. B. der 13.07.2018 (Stand) - in welcher Abteilung zu diesem Zeitpunkt Klaus seine arbeit vollzog bzw. vollzieht...

MfG smedic
smedic
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 6
Registriert: 15. Sep 2018, 11:05

Re: Abfrage Datum-Bereiche

Beitragvon Gast » 15. Sep 2018, 13:02

Die letzte Rückfrage wäre unnötig gewesen, wenn man statt Datum eine "sprechende" Bezeichnung wir Arbeitsbeginn gewählt hätte. so etwas ist kürzer als ein jeweiliger Zusatzkommentar.
Code: Alles auswählen
SELECT TOP 1
   *
FROM
   FolgendeTabelle
WHERE
   Person = 'Klaus'
      AND
   Datum <= #7/13/2018#
ORDER BY
   Datum DESC
Gast
 

Re: Abfrage Datum-Bereiche

Beitragvon knobbi38 » 15. Sep 2018, 13:09

Hallo smedic,

noch ein Hinweis: vermeide besser reservierte Wörter als Feldnamen . --> 'Datum'

Ulrich
knobbi38
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 294
Registriert: 02. Jul 2015, 14:23

Re: Abfrage Datum-Bereiche

Beitragvon smedic » 15. Sep 2018, 13:31

Hallo und vielen Dank für die Antworte.

Ich habe die Namen wie Datum lediglich zur Veranschaulichung meines Problems gewählt.
In der eigentlichen Tabelle lautet sie ‚verlauf_seit“.

Vielen Dank für die schnelle Hilfe..
smedic
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 6
Registriert: 15. Sep 2018, 11:05

Re: Abfrage Datum-Bereiche

Beitragvon Beaker s.a. » 15. Sep 2018, 13:35

Hallo Ulrich,
Grundsätzlich hast du natürlich Recht (ich verwende es auch nicht),
aber "Datum" ist in SQL kein reservierter Begriff (das Wort gibt es im
Englischen nicht). Gast hätte es sonst auch anders genannt.
gruss ekkehard
Ereignisorientierte Programmierung:
Alles, was geschieht, geschieht.
Alles, was während seines Geschehens etwas anderes geschehen
läßt, läßt etwas anderes geschehen.
Alles, was sich selbst im Zuge seines Geschehens erneut geschehen
läßt, geschieht erneut.
Beaker s.a.
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 262
Registriert: 14. Jul 2012, 21:56
Wohnort: Bremen

Re: Abfrage Datum-Bereiche

Beitragvon knobbi38 » 15. Sep 2018, 15:13

Hallo Ekkehard,

reserviertes Wort ist vielleicht nicht ganz korrekt, aber die (automatische) Übersetzung bei Access schlägt dann doch manchmal unangenehm in den lokalisierten Versionen von Access zu. Besser gleich ganz vermeiden, bevor man unnötig nach Fehlern sucht. :wink:

Gruß
Ulrich
knobbi38
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 294
Registriert: 02. Jul 2015, 14:23

Re: Abfrage Datum-Bereiche

Beitragvon smedic » 17. Sep 2018, 13:21

Hallo nochmal,

nun müsste ich diese Abfrage etwas erweitern - doch das funktioniert nicht.
Ich möchte, dass diese Abfrage nicht nur bei Klaus die aktuelle Abteilung aufzeigt, sondern bei allen Personen.

Wie bekomme ich das denn hin? Habe es mit einer Abfrage versucht [tbl_personen] verknüpft mit der TOP 1 - Lösung, doch das klappt nicht...

Gruß
smedic
smedic
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 6
Registriert: 15. Sep 2018, 11:05

Re: Abfrage Datum-Bereiche

Beitragvon mmarkus » 17. Sep 2018, 13:47

smedic hat geschrieben:Habe es mit einer Abfrage versucht [tbl_personen] verknüpft mit der TOP 1 - Lösung, doch das klappt nicht...


Vom Prinzip her etwa so:

Select P.Person, (Select Top 1 Abteilung ... where Person = P.Person ...) AS Abteilung
FROM tbl_personen P

Also eine synchronisiert Unterabfrage.
Ich hoffe, doch dass du in deiner Tabelle mit der Zuordnung der Abteilungen eine ID für die Person verwendest und keine Namen.
ms access what else
mmarkus
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 996
Registriert: 16. Apr 2012, 16:07
Wohnort: Vienna

Re: Abfrage Datum-Bereiche

Beitragvon smedic » 17. Sep 2018, 13:50

Hallo,

ja klar - ich arbeite ausschließlich mit IDs.
Sonst bräuchte ich ja keine Datenbank.

Ich versuche es mal und gebe dann bescheid.

Vielen Dank schon mal im Voraus.

Gru
smedic
smedic
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 6
Registriert: 15. Sep 2018, 11:05

Re: Abfrage Datum-Bereiche

Beitragvon smedic » 18. Sep 2018, 08:00

Hallo,

hat leider nicht funktioniert, da Access Mitteilt, dass es nur einen Rückgabewert zurückgibt.
Ich benötige jedoch für JEDEN Mitarbeiter die zur Abfragezeit innehabende Abteilung.
Die TOP 1 - Lösung bringt wirklich nur den ersten Datensatz der Abfrage.

Die Unterabfrage ist somit leider auch keine Lösung.
Ich müsste wphl oder übel dann doch auf die von und bis-Angaben (Datum)-Lösung umsteigen...?!

Gruß
smedic
smedic
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 6
Registriert: 15. Sep 2018, 11:05

Re: Abfrage Datum-Bereiche

Beitragvon Wurstmann » 18. Sep 2018, 08:13

Hey,

es würde helfen, wenn du deinen Versuch hier mal zeigst. "Klappt nicht" ist keine Fehlerbeschreibung.

Vg
WM
Wurstmann
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 429
Registriert: 26. Jun 2013, 09:11

Re: Abfrage Datum-Bereiche

Beitragvon Gast » 18. Sep 2018, 09:15

nun müsste ich diese Abfrage etwas erweitern

Es wäre auch sinnig, gleich die vollständige und zu Ende gedachte Aufgabe darzulegen. "Erweitern" könnte nämlich auch bedeuten, dass man ganz anders rangeht, und Dir ist sicher nicht nur die eigene Zeit wichtig ...
Code: Alles auswählen
SELECT
   F.*
FROM
   FolgendeTabelle AS F
WHERE
   F.ID IN
      (
         SELECT TOP 1
            X.ID
         FROM
            FolgendeTabelle AS X
         WHERE
            X.Person = F.Person
               AND
            Datum <= #7/13/2018#
         ORDER BY
            Datum DESC
      )
Gast
 


Zurück zu Access Forum (provisorisch)

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 8 Gäste