Information ausblenden
Willkommen im Forum für alle Datenbanken! Registriere Dich kostenlos und diskutiere über DBs wie Mysql, MariaDB, Oracle, Sql-Server, Postgres, Access uvm

Update-Statement: Setze einen Wert vom Typ "Datum/Uhrzeit" auf HEUTE + 2 Tage um 23:59:59

Dieses Thema im Forum "Microsoft SQL Server" wurde erstellt von 4calimero, 14 September 2014.

  1. 4calimero

    4calimero Neuer Benutzer

    Hallo zusammen,

    ich suche ein einfaches Update-Statement:
    Setze einen Wert vom Typ "Datum/Uhrzeit" auf HEUTE + 2 Tage um 23:59:59.

    Statisch sähe das wohl so aus:
    UPDATE artikel SET gueltigbis = "14.09.2014 23:59:59"

    Das Datum muss aber beim Aufruf dynamisch eingesetzt werden, wie in folgendem Stil skizziert:
    UPDATE artikel SET gueltigbis = NOW() + 2 Tage + "23:59:59"

    Habe schon mit DateTime experimentiert, komme aber nicht zum Ergebnis. Ich selbst komme aus der "MySQL-Welt" und tu mich mit MS SQL / Transact SQL noch etwas schwer. Die Unterscheide sind teilweise enorm.

    Hat jemand eine Idee oder einen Ansatz?

    Danke & Gruß,
    Sascha
     
  2. akretschmer

    akretschmer Datenbank-Guru

    Ich denke, das ist schon mal falsch, weil now() liefert JETZT, dazu 2 Tage ist JETZT in 2 Tagen, dazu noch mal 25:59:59 addiert ist jetzt in 3 Tagen - 1 Sekunde. Falls das so aufgeht und akzeptiert wird vom Parser.

    Code:
    test=*# select current_date + 3 - '1second'::interval;
      ?column?
    ---------------------
     2014-09-17 23:59:59
    (1 row)
    
    So ginge es in PostgreSQL.
     
  3. ukulele

    ukulele Datenbank-Guru

    Code:
    SELECT    dateadd(second,-1,dateadd(day,3,cast(cast(getdate() AS INT) AS DATETIME)))
    Und so in MSSQL.

    Es gibt natürlich andere Wege aber Textkonvertierung würde ich vermeiden.
     
Die Seite wird geladen...

Diese Seite empfehlen

  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden