Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Hallo!

Ich hab hier eine Tabelle in Oracle mit ca. 30000 Zeilen.

Dabei gibt es mehrere Spalten in denen ein Datum steht.

Jetzt hab ich folgendes Problem:

Ich hab eine Spalte Geburtsdatum und in dieser Spalte steht das Datum manchmal so:

DD.MM.YYYY

manchmal so:

DD.MM.YY

und manchmal so:

YYYYMMDD

Kann ich irgendwie alle in das Format DD.MM.YYYY umwandeln?

Hab jetzt erstmal eine select anweisung geschrieben die mir alle zeilen ausgibt in denen das Datum nicht dem richtigen Format entspricht.

Aber wie kann ich das jetzt dabei ändern?

MfG Stefan

Geschrieben

Hallo Slang,

versuche es doch mal mit der Funktion to_date(Datum, Format).

Du könntest doch in einer Schleife die Daten in eine Variable (hier: Datum) schreiben und sie in das entsprechende Format konvertieren.

LG,

Jusky

Geschrieben

Nun, mit der Funktion kannst du ein Datum in ein bestimmtest Format umwandeln.

Z.B. neues_Datum = to_date(altes_Datum, 'DD.MM.YYYY')

Jetzt musst du es nur noch hinbekommen, dass du eine Schleife um das Ganze herumbastelst, die deine einzelnen (im Format falschen) Datumsangaben aufgreift und formatiert. Am besten macht man das mit PL/SQL.

Dazu deklarierst du vorher in dem DECLARE-Teil einen Cursor, in dem du deine Ergebnisse schreibst:

Z.B.

cursor Name_des_Cursors is

select Datum into falsches_Datum from Tabelle

where Format = 'XXXXXXX';

Im Hauptprogramm (fängt mit BEGIN an), kommt dann die eigentliche Formatierung:

for rec in Name_des_Cursors loop

neues_datum = to_date(falsches_Datum, 'DD.MM.YYYY');

Update Tabelle

Set Datum = neues_datum

where....;

end loop;

So ungefähr müsste es dann aussehen. Du musst dann aber noch die benötigten Variablen im DECLARE-Teil deklarieren.

Hoffe, das hilft dir weiter! :)

LG,

Jusky

Geschrieben

Hauptprogramm?

Cursor?

Also ich sitze hier vor meinem Oracle SQL Plus und hab keine Ahnung wie ich das jetzt anstellen soll...

Bin doch blutiger Anfänger in Oracle :(

Naja, trotzdem schonmal vielen Dank.

Vielleicht bekomm ich ja noch was auf die Reihe hier

Geschrieben

Hey, jeder fängt mal klein an! - Zur Not gibt es ja noch etliche Suchmaschinen, die man durchforsten kann. :)

Hier und hier findest du gute Tutorials zum Thema. Da kannst du dich ja mal einlesen...

Ich wünsch dir jedenfalls viel Erfolg! :)

Geschrieben

OK, Danke :)

Werde dann mal ein bißchen googeln...

Hab aber direkt noch eine Frage.

Hab noch eine Spalte "Name" und manchmal sind die Namen so geschrieben:

Mustermann

manchmal so:

MUSTERMANN

und manchmal so:

mustermann

Die Namen sollen alle geändert werden, dass sie so aussehen:

Mustermann

Ist das auch möglich?

Reicht ja erstmal wenn ich nur ein eindeutiges "JA" oder "NEIN" bekomme, dann weiss ich wenigstens ob es sich lohnt danach auch bei google zu suchen.

MfG

Stefan

Geschrieben

Ja, das geht. Dazu müsstest du dir jeden Namen vornehmen (also wieder eine Schleife ;) ) und den ersten Buchstaben in einen Groß- und den Rest in Kleinbuchstaben umwandeln.

Hierbei dürften folgende Funktionen interessant sein:

- substr (String, Anfangsstelle, Länge)

=> zum Ausschneiden eines Teilstrings im String

- Upper

=> wandelt Klein- in Großbuchstaben um

-Lower

=> Gegenteil zu Upper

LG,

Jusky

Geschrieben

Danke nochmal...

Ich glaube die ganze Sache hat sich erledigt.

Cheffe hat grade gemerkt, dass das Programm mit dem auf die Datenbank zugegriffen wird das Datum und die Namen auch so erkennt, egal in welchem Format und es automatisch richtig anzeigt....

Jetzt hab ich mir das Suchen zwar gespart, :)

aber so werde ich das dann wohl auch nicht richtig lernen :(

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