2017-02-07 3 views
0

Ich denke, das ist wahrscheinlich ziemlich einfach, aber ich konnte das nicht herausfinden.Wie filtere ich einen Access-Bericht/eine Abfrage basierend auf Werten aus einer verknüpften Tabelle?

Ich habe eine Access-Datenbank für Studenteninformationen erstellt. Ich habe einen Tisch "Schüler" und einen Tisch "Schuljahre". Die Tabelle "Schüler" enthält ein Nachschlagefeld für die Tabelle "Schuljahre", in dem jedes Jahr der Schüler die Schule besuchen kann. Die Tabelle "Schuljahre" enthält eine Liste von Jahren zusammen mit einem YN-Feld namens "Aktuelles Jahr", um anzugeben, welches Jahr als aktuell gilt.

Meine Absicht ist, dass Berichte/Abfragen so konfiguriert werden, dass nur "Current Year" -Schüler angezeigt werden. Wie filtere ich meine Berichte basierend darauf, wann Schüler [Schuljahr] das Jahr einschließen, in dem [Schuljahre] .Current = True?

+0

http://stackoverflow.com/help/mcve –

Antwort

0

Angenommen, Sie School Year als numerisches Feld mit Jahreswert speichern, können Sie dies versuchen:

select * from [Students] where [School Year] = year(date()); 
  • date() - gibt aktuelles Datum
  • year(date) - kehrt Jahr des angegebenen Datums
+0

Danke, Gurwinder. Das Problem mit den Schuljahren ist, dass sie sich mitten in einem Kalenderjahr überschlagen, also funktioniert es einfach nicht, das aktuelle Datum zu überprüfen. Ich mag die Automatisierung, aber in diesem Fall ist es für mich praktischer, das Schuljahr "Aktuell" spezifizieren zu können. Ich habe das Jahr als ein Textfeld mit den Daten "2016-2017", "2017-2018" ... das erweist sich als schwieriger, als ich erwartet hatte. – Scotto

Verwandte Themen