Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Abfragedatum festlegen

Begonnen von EngelbrechtM, Oktober 23, 2017, 10:08:14

⏪ vorheriges - nächstes ⏩

EngelbrechtM

Guten Tag,

ich habe ein kleines Problem. Ich möchte diese Abfrage zu einem festgelegten Stichtag versehen. Ich komme da aber leider nicht weiter. Ich würde gerne alle 3 Kriterien zum Status erfüllen.

- Eine Abfrage zu einem bestimmten Stichtag
- Eine Abfrage für einen bestimmten Zeitraum. Die jetzige Abfrage liefert ja den Zeitraum 01.10.15-30.09.2016



Wäre es mit den 3 Kriterien möglich oder müsste ich für jeden Status eine eigene Abfrage erstellen? Und dann mit Zwischen [von]... arbeiten?

Vielen Dank.

DF6GL

Hallo,

Zitat- Eine Abfrage zu einem bestimmten Stichtag
- Eine Abfrage für einen bestimmten Zeitraum.

Du musst Dich schon entscheiden, was Du (gerade) willst...

Beides zusammen geht nicht., d. h. es müssen zwei Abfragen werden.

EngelbrechtM

Hallo DF,

Danke für die schnelle Antwort.

Nein, das weiß ich. Ich bräuchte jeweils 2 Abfragen. Einmal für einen bestimmten Stichtag und die 2 Abfrage für einen Zeitraum. Würde die Abfrage dann kopieren und als 2 Abfrage speichern.

Beaker s.a.

#3
Hallo,

Vorab, - die Benennung der Tabelle lässt ein suboptimales Datenmodell erahnen.
Zur Abfrage, - die Bedingung <5000 brauchst du nur einmal. Für das Datum
würde ich Parameter einführen.
(Luftcode, ungetestet)
PARAMETERS DatumEZ DateTime,
                   DatumStart DateTime;
                   DatumEnde DateTime;
SELECT  F.Status, F.Hersteller, F.Modellbezeichnung, F.[Fahrzeug-Nr], F.Erstzulassung, F.[verkauft am]
FROM [200-Fahrzeuge] AS F
WHERE [Fahrzeug-Nr] < 5000
      AND ((F.Status = 0 OR F.Status = 1 F.Status = 5)
      AND F.Erstzulassung = DatumEZ
      AND F.[verkauft am] BETWEEN DatumStart AND DatumEnde)


gruss ekkehard

Schnell noch ergänzt, - wie du Parameterabfragen mit VBA behandelst kannst du
hier http://www.donkarl.com?FAQ6.16 nachlesen.
Alles, was geschieht, geschieht. - Alles, was während seines Geschehens etwas anderes geschehen lässt, lässt etwas anderes geschehen. - Alles, was sich selbst im Zuge seines Geschehens erneut geschehen lässt, geschieht erneut. - Allerdings tut es das nicht unbedingt in chronologischer Reihenfolge.
(Douglas Adams, Mostly Harmless)

ebs17

Zitat- Eine Abfrage zu einem bestimmten Stichtag
- Eine Abfrage für einen bestimmten Zeitraum.
Ein Tag ist auch ein Zeitraum. In diesem Fall ist DatumStart und DatumEnde gleich, somit dann auch bei der Parameterübergabe.


...
AND ((F.Status = 0 OR F.Status = 1 F.Status = 5)
...
===>
...
AND (F.Status IN (0, 1, 5)
...
Mit freundlichem Glück Auf!

Eberhard

EngelbrechtM


Beaker s.a.

Hallo,
@Eberhard
ZitatEin Tag ist auch ein Zeitraum.
Den Gedanken hatte ich auch, aber ich glaube er meinte gar nicht zwei
Abfragen sondern zwei Bedingungen, betrifft ja auch zwei
Felder, - oder was hakt da bei mir wieder?

@Engelbrecht
Gerade erst gesehen ist diese Zeile nicht korrekt, fehlte schon ein OR bei mir.
ZitatAND ((F.Status = 0 OR F.Status = 1 OR F.Status = 5)
Aber Eberhards Variante mit IN ist eh besser.

gruss ekkehard
Alles, was geschieht, geschieht. - Alles, was während seines Geschehens etwas anderes geschehen lässt, lässt etwas anderes geschehen. - Alles, was sich selbst im Zuge seines Geschehens erneut geschehen lässt, geschieht erneut. - Allerdings tut es das nicht unbedingt in chronologischer Reihenfolge.
(Douglas Adams, Mostly Harmless)