Announcement

Collapse
No announcement yet.

datumswerte manipulieren

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • datumswerte manipulieren

    ...durch den import einer alten foxpro datenbank in ms-sql-server 7.0 habe ich ein smalldatetime-feld bekommen. in diesem feld werden werte aus den jahren 2000 und 2001 als 1900 und 1901 gefuehrt.
    da ich auf das korrekte datum angewiesen bin, muss ich diese datensaetze manipulieren.
    wie addiere ich zu den falschen datumswerten einfach 100 jahre oder setze das jahr korrekt?

    ich stelle mir etwas in dieser art vor (hat leider nicht funktioniert...):

    > update fakt_faktant
    > set datum = datum + year(100)
    > where year(datum) = 1900

  • #2
    Hallo,

    die T-SQL-Funktion <b>DATEADD</b> sollte das Problem lösen, wie das folgende Beispiel demonstriert:
    <pre>
    CREATE TABLE Kech (
    TblID INTEGER NOT NULL IDENTITY PRIMARY KEY,
    Datum SMALLDATETIME)
    GO
    INSERT INTO Kech (Datum) VALUES ('01.01.1901');
    INSERT INTO Kech (Datum) VALUES ('01.01.2001');
    GO

    UPDATE Kech SET Datum = DATEADD(year, 100, Datum) WHERE YEAR(Datum) = 1901
    Go
    SELECT * FROM Kech
    Go
    </pre&gt

    Comment

    Working...
    X