Zum Inhalt springen

zahlen in Datum umwandeln


Lutscher2002

Empfohlene Beiträge

HAI

Ich hab hier eine Access Datenbank in der ich mittels der Importfunktion ASCII Files importiert habe, in der eine Datumsangabe ungefähr so aussieht : 2002828

Jetzt sollte dieses Datum aber so in der Tabelle stehen : 8/28/2002 und das Feld sollte vom typ ein datumsfeld sein.

Wenn ich das Feld umstelle auf ein datumsfeld in der Tabelle dann löscht er mir gleich alle Datensätze. Beim Improtieren war genau das gleiche gewesen.

Frage wie bekomm ich hin das es ein datumsfeld wird und die Datumsangabe so aussieht wie oben beschrieben

Arbeite mit Access 2000

mfg,

der lustcher

Link zu diesem Kommentar
Auf anderen Seiten teilen

Moin !

Du kannst einfach eine neue Spalte mit Datum als Datentyp in der Tabelle anlegen und dann mit Hilfe des "Update" SQL-Befehls die Werte aus der alten Spalte (wo das Datum als Zahl steht) in die neue Datums-Spalte übertragen. Hinterher kannst Du die alte Spalte dann löschen.

Nur hast Du ein Problem mit dem Format Deiner Daten, in Deinem Beispiel 2002828 ist der Monat einstellig angegen, das heisst das man nicht genau weiss wann der Monat und wann der Tag anfängt. Zum Beispiel könnte ja 2002111 sowohl der 1.11.2002, als auch der 11.1.2002 sein.

Du müsstest also denk ich erstmal Tag und/oder Monat zweistellig (mit führender Null) kriegen, damit Du die Daten umwandeln kannst.

gruß

Christian

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 4 Wochen später...

Hi, Lutscher2002!

Falls das Problem noch aktuel sein sollte...

...hier eine Lösung mittels einer Abfrage:

SELECT t_Datum.x_Datum_als_Text, DateSerial

(Left$([x_Datum_als_Text],4),

Mid$([x_Datum_als_Text],5,2),

Right$([x_Datum_als_Text],2)) AS y_Datum

FROM t_Datum;

Ich gehe davon aus, daß der Datums-Text

entweder immer JJJJMMTT

oder immer JJJJTTMM

formatiert ist!

in der Lösung oben habe ich JJJJMMTT angenommen.

Sollte es folgendermaßen vorliegen: JJJJTTMM

lautet die Abfrage:

SELECT t_Datum.x_Datum_als_Text, DateSerial

(Left$([x_Datum_als_Text],4),

Right$([x_Datum_als_Text],2),

Mid$([x_Datum_als_Text],5,2)) AS y_Datum

FROM t_Datum;

(Die verwendete Tabelle heißt "t_Datum",

das einzige Feld "x_Datum_als_Text".

"y_Datum" wird in der Abfrage berechnet.)

Wie dann die Ausgabe formatiert werden soll, steht Dir frei.

Auf jeden Fall wird ersteinmal das Datum korrekt gespeichert!

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...