Zum Inhalt springen

SQL-Abfrage / ACCESS / Datum zwischen X und Y / Formatproblem


xound

Empfohlene Beiträge

Jetzt hab ichs :)


WHERE value Between DateValue("08.08.2005") And DateValue("04.10.2005")

[EDIT]

Zu früh gefreut die Daten im Format 08/08/2005 werden nicht erfasst:(

Dir macht das anscheinend mehr Spass als mir. :-)

Auch das funktioniert nicht, in diesem Fall gibt er nur:

When (Date) 04/07/2005

When (Date) 04/07/2005

When (Date) 04/08/2005

When (Date) 04/08/2005

When (Date) 04/10/2005

When (Date) 04/10/2005

Nicht aber ALLE Daten, die in diesem Zeitraum liegen ...

Hmm??

Gibt es nicht so In Select Funktionen, mit denen man zuerst nach einem Attribut und dann nach dem anderen auswählen kann?

Link zu diesem Kommentar
Auf anderen Seiten teilen


SELECT value

FROM Tabelle1

WHERE value Between DateValue("01.01.2005") And DateValue("31.12.2005");

In dem Feld Value hab ich folgendes stehen:

09.09.2005

peter

01.07.2005

02/02/2005

2006.10.09

2005.02.03

und die Abfrage bringt folgendes Ergebniss:

value

09.09.2005

01.07.2005

02/02/2005

2006.10.09

2005.02.03

[EDIT]

Es ist echt zu spät zum Programmieren :beagolisc Hab erst jetzt gesehen das da auch 2006 bei ist und das sollte nicht sein...also immernoch kein Erfolg Sorry

Link zu diesem Kommentar
Auf anderen Seiten teilen


SELECT value

FROM Tabelle1

WHERE value Between DateValue("01.01.2005") And DateValue("31.12.2005");

In dem Feld Value hab ich folgendes stehen: 09.09.2005 peter 01.07.2005 02/02/2005 2006.10.09 2005.02.03 und die Abfrage bringt folgendes Ergebniss: value 09.09.2005 01.07.2005 02/02/2005 2006.10.09 2005.02.03
Nimm mal bitte diese Werte mit auf: 2006.02.08 2006.02.15 2006.02.08 22/02/2006 und probiers nochmal. Was kommt dabei raus? Edit: Ich sehe gerade, dass Du auch "2006.10.09" in Deiner Ausgabe hast. Das ist natürlich nicht gewollt. Das ist das Problem, welches man mit
SELECT DateValue(value) as date_value

FROM Properties

WHERE DateValue(value) Between DateValue("01.01.2005") And DateValue("31.12.2005");

umgehen kann ...

Vielleicht sollte man versuchen mit einer Art In Select zu arbeiten ... Hast Du eine Idee, wie?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hier nochmal eine Zusammenfassung der Problematik:

ich greife via MS JET OLEDB auf eine ACCESS-DB zu, führe

SQL-Statements aus.

Ich möchte mir Datensätze aus einer ACCESS-Tabelle anzeigen lassen,

die zwischen bestimmten Datumsangaben liegen. Der Datentyp des

Feldes, in dem die Datumsangaben liegen ist Text. Zudem sind

die Datumsangaben in 3 verschiedenen Formaten. Ich formatiere also

mit einer einer Funktion namens DateValue um.

01.07.2005

02/02/2005

2005.02.03

Als SQL-Statement sieht das so aus:

SELECT eigenschaft_name, eigenschaft_wert

FROM tabelle

WHERE DateValue(eigenschaft_wert) Between DateValue("01.01.2005") And

DateValue("30.09.2005");

Das funktioniert auch soweit gut.

Jetzt das Problem; neben den Datumsangaben können in "eigenschaft_wert" auch

Personennamen enthalten sein (Wird über "eigenschaft_name" erkenntlich,

darin steht entweder "Wer" oder "Wann"). Wenn ein Personenname in

"eigenschaft_wert" enthalten ist, bringt die obige SQL-Anweisung einen Fehler, nämlich

"Description: Datentypen in Kriterienausdruck unverträglich."

Der Fehler ist mir auch klar, die Funktion DateValue kann mit dem

Personennamen nichts anfangen. Ich weiss nur nicht, wie ich das

umgehen kann.

Die Datensätze von Eigenschaft_name und Eigenschaft_wert sehen also z.B. so aus:

Wann 09.09.2005

Wer peter

Wann 01.07.2005

Wann 02/02/2005

Wann 2005.02.03

Vielleicht hat jemand von Euch eine Idee, wie man das Problem lösen

kann. An der Datenbank darf nichts verändert werden, ich darf

lediglich via OLEDB-Treiber darauf zugreifen.

Vielen Dank.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...