MS Access Abfrage Problem
Facetious 30.08.2006 - 11:48 688 4
Facetious
Addicted
|
Hi! Meine Aufgabe ist es Daten zu selektieren. Dabei haben verschiedenste Daten einen Verschiedensten Status (1, 2, 3, 4, 5 und 6). Ich würde jetzt gerne alle Daten anzeigen, außer Daten mit Status 6, welche älter als 1 Jahr sind. Ich steh aber im Moment völlig auf der Leitung Abfrage bisher: SELECT Datenblatt.[no], Datenblatt.status, Datenblatt.type, Datenblatt.usage, Datenblatt.object, Datenblatt.country, .... FROM Datenblatt
WHERE (((Datenblatt.receipt)>Now()-365 AND Datenblatt.status = "6 canceled"));
klarerweise macht die Abfrage nicht ganz das was ich will, aber ich wüsste nicht wie ich den Status direkt mit dem Datum koppeln soll. Hoffe auf eure Hilfe! mfg Facetious
Bearbeitet von Facetious am 30.08.2006, 12:41
|
Gulinborsti
Addicted
|
Am MSSQL Server würde das ganze so aussehen: SELECT bla, bla, bla, ...
FROM Datenblatt
WHERE DATEDIFF(day, receipt, GETDATE()) < 365 AND status = "6 cancelled"
kA, ob das so oder ähnlich in Access auch klappt.
|
Facetious
Addicted
|
Die Abfrage macht ja im Endeffekt genau das gleiche wie meine.
Was ich möchte ist, dass er mir alle Daten mit dem Status 1, 2, 3, 4 und 5 anzeigt. Darüberhinaus soll er aber auch noch alle Daten mit Status 6 anzeigen, welche nicht älter als ein Jahr sind.
Geht das überhaupt? mft Facetious
|
Gulinborsti
Addicted
|
EDIT: Sorry, hab dein erstes Posting unaufmerksam gelesen... Ja klar geht das, schnell würde mir da ein UNION einfallen: SELECT bla, bla, bla, ...
FROM Datenblatt
WHERE status <> "6 cancelled"
UNION
SELECT bla, bla, bla, ...
FROM Datenblatt
WHERE status = "6 cancelled" AND DATEDIFF(day, receipt, GETDATE()) < 365
Also im ersten SELECT alle außer status = "6 ..." und im zweiten SELECT alle mit (status = "6 ..." AND nicht älter als ein Jahr) hth
Bearbeitet von Gulinborsti am 30.08.2006, 12:39
|
Facetious
Addicted
|
genau das wars was ich gesucht habe!
Super danke!
|