Datenbank Forum - für Anfänger und Profis

Willkommen im Datenbank Forum von Datenbanken-verstehen.de - Das Datenbank, Data Warehouse & Business Intelligence Forum!

Das Datenbank Forum für Anfänger und Profis ist eine Community zu den Themen Datenbanken, Data Warehouse & Business Intelligence. Nimm teil an der Community von Datenbanken-verstehen.de und tausch dich mit deinen Fragen und Lösungen mit anderen Nutzern aus.

Als registrierter Benutzer genießt Du viele Vorteile, wie

  • den vollen Zugang zu allen Foren und Unterforen
  • Kostenloses Lernmaterial inkl. Lösungen zum Thema Datenbanken
  • Zugriff auf DB-Tutorials, Best Practices und SQL-Snippets

Bevor Du einen Beitrag verfassen möchtest, kannst Du dich einfach kostenlos registrieren.

oder Einloggen mit



Beachte bitte die Forenregeln von Datenbanken-verstehen.de. Wir wünschen Dir viel Spaß im Datenbank Forum! - Dein Datenbanken-verstehen.de-Team

SQL Char to Date konvertieren

Hier werden die SQL Grundlagen behandelt...

SQL Char to Date konvertieren

Beitragvon Flippi » So 28. Apr 2019, 19:04

Hallo zusammen,
ich bin neu im Datenbanken Umfeld und hab ein Problem und würde es gerne mit der CONVERT Funktion in SQL lösen, weiß aber nicht wie.. :?: :?:

Die Situation:
Ich habe eine Tabelle die „dateDimension“ heißt. DATE_OF_TRANSFER ist darin eine Spalte vom Datentyp CHAR(16), und diese will ich entweder direkt in der selben Spalte umwandeln in den Typ DATE oder in eine zweite Spalte kopieren die vom Datentyp DATE ist.
So sieht die Tabelle aus und die leeren Spalten möchte ich alle noch füllen.

ID - DATE_OF_TRANSFER (Char(16)) - New_Date(DATE) - YEAR - QUARTER - MONTH - CALENDARWEEK - DAY
1 2002-09-06 00:00
2 2002-09-06 00:00
3 2002-09-06 00:00
4 2002-09-06 00:00

Ich hab eine CSV Datei mit 2mio records und das importieren in die DerbyDB hat nie geklappt, wenn DATE_OF_TRANSFER den Datentyp TIMESTAMP hatte, drum hab ich CHAR(16) genommen, dann gings. Jetzt möchte ich das Datum aber am liebsten als DATE und nicht als TIMESTAMP haben weil die Zeit irrelevant ist. Wenn es ein DATE ist kann ich glaub ich mit year()/month() Funktionen etc die restlichen Spalten füllen (YEAR - QUARTER - MONTH etc sind noch leer).

Wie würdet Ihr die Aufgabe lösen? Auch mit convert()?

ich dachte jetzt an sowas:

CONVERT(DATE, 101) aber wie mach ich dem klar, dass er die Spalte DATE_OF_TRANSFER nehmen soll?

Vielen Dank für Eure Hilfe!!

LG Flippi
Flippi
 
Beiträge: 1
Registriert: Fr 19. Apr 2019, 16:29

Re: SQL Char to Date konvertieren

Beitragvon RainerH » Sa 4. Mai 2019, 13:43

Hallo Flippi,

Du wirst wahrscheinlich deinen String kürzen bzw. zerschneiden müssen, damit er konvertiert werden kann:
Code: Alles auswählen
DECLARE @Beispiel CHAR(16)
Set @Beispiel = '2002-09-06 00:00';

SELECT Convert(date,left(@Beispiel,10))

Ergebnis: 2002-09-06

Ich habe es mal in T-SQL gemacht, da ich deine Datenbank "DerbyDB" nicht kenne :?
Nimm NICHTS persönlich -- alles ist Feedback...
RainerH
 
Beiträge: 230
Registriert: Fr 1. Nov 2013, 17:58


Zurück zu SQL Grundlagen

 


  • Related topics
    Antworten
    Zugriffe
    Letzter Beitrag

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast

cron
  • Jetzt Fan werden
  • Newsletter abonnieren? Hier anmelden!

    Alle Informationen aus dem Portal, Blog und Forum in einem Newsletter!

    E-Mail-Adresse: