Jump to content

Datum berechnen mit Zahl


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Hallo Zusammen,

 

ich habe die folgende Beispieltabelle.

Kann mir jemand sagen wie ich das Datum des Timespan ermitteln kann ??

 

MFG Ingo

 

Feld [Datum]                Feld [Erinnerung vorher]

2020-06-29 01:07:51    NULL
2020-06-29 01:07:51    NULL
2020-06-29 01:07:51    NULL
2020-06-29 01:07:51    NULL
2020-06-29 01:07:51    -36000000000
2020-06-29 01:07:51    NULL
2020-06-29 01:07:51    -36000000000
2020-06-29 01:07:51    NULL
2020-06-29 01:07:51    NULL
2020-06-29 01:07:51    NULL
2020-06-29 01:07:51    -36000000000
2020-06-29 01:07:51    -72000000000
2020-06-29 01:07:51    NULL
2020-06-29 01:07:51    NULL
2020-06-29 01:07:51    324000000000

Link zu diesem Kommentar

Moin,

 

die Frage verstehe ich nicht recht. Geht es darum, aus "2020-06-29 01:07:51" nur das Tagesdatum zu extrahieren? Dafür eignet sich die FORMAT-Funktion.

 

[How to Format the Date & Time in SQL Server | Database.Guide]
https://database.guide/how-to-format-the-date-time-in-sql-server/


[FORMAT (Transact-SQL) - SQL Server | Microsoft Docs]
https://docs.microsoft.com/en-us/sql/t-sql/functions/format-transact-sql?view=sql-server-ver15


Gruß, Nils

 

Link zu diesem Kommentar

Das erste Datum habe ich nur als Beispiel genommen.

In dem Feld namens Datum stehen richtige Datumsangaben eines Termines.

In einem 2. Feld Erinnerung vorher steht eine Zahl wie oben in der Tabelle zu sehen ist.

Ich möchte aber anstelle dieser Zahl das Datum / Uhrzeit der Erinnerung haben.

Daher brauche ich eine Formel, die mir z.B. in der Zeile 5

 

von einem Datum das z.B. 2020-06-29 sein kann die Erinnerung von -36000000000 abzieht und

ich mittels Forme dann im 3. Feld (z.B. Erinnerung:" den Wert 27.06.2020 stehen habe statt der -xxxxxxxx

 

Jetzt klarer geworden ?

Link zu diesem Kommentar

Moin,

 

nein, das verstehe ich nicht. Wie zieht man eine Erinnerung von einer großen negativen Zahl ab? Du müsstest das schon etwas vollständiger erklären.

 

Nur mal so ins Blaue geschossen:

[DATEADD (Transact-SQL) - SQL Server | Microsoft Docs]
https://docs.microsoft.com/en-us/sql/t-sql/functions/dateadd-transact-sql?view=sql-server-ver15


Aber trotzdem wäre es nett, wenn du dich um Verständlichkeit deiner Fragen bemühst.

 

Gruß, Nils

 

bearbeitet von NilsK
Link zu diesem Kommentar

OK Mal Ganz Einfach:

Feld 1 = 2020-06-29 08:00:00.000 -> steht für den Termin am 29.06.2020 um 08:00 Uhr !!!

Feld 2 = -36000000000 -> Steht so in der Tabelle für die Erinnerung 1 Stunde vorher

-72000000000 -> Steht für 2 Stunden vorher

 

Das Feld 3 das ich gerne berechnet hätte würde somit 29.06.2020 um 07:00 Uhr ergeben !!!

 

Beispiel aus der Software: und aus SQL

 

image.png.ade6050c2d51b87764351bcb8a5755a4.png

 

image.png.62eed5e3f4334d297c90dc2e46c9dfd0.png

 

image.png

Link zu diesem Kommentar

Moin,

 

ah, siehste. Geht doch. Nächstes Mal liefere die Informationen doch gleich. Dann kannst du dir auch die Ausrufezeichen sparen.

 

Für dein Vorhaben sollte DATEADD() passen, siehe Link oben. Sofern ich es richtig überschlage und es sich bei "timespan" um Nanosekunden handelt, kannst du das direkt als Parameter angeben, sonst musst du den Wert eben noch umrechnen.

 

Gruß, Nils

Link zu diesem Kommentar

Nutzt du Nanosekunden?

SELECT DATEADD(MS,-36000000000, CONVERT(nvarchar, GETDATE(), 20))

 

Oder versuche mal:

SELECT DATEADD(MS,-36000000000, GETDATE())

 

EDIT:

Oder millisecond statt MS. Die ganzen Beispiele sind mit den ausgeschriebenen texten:

https://docs.microsoft.com/en-us/sql/t-sql/functions/dateadd-transact-sql?view=sql-server-ver15

bearbeitet von Dukel
Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...