Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Subtrahieren Sie die Minute von DateTime in SQL Server 2005

SELECT DATEADD(minute, -15, '2000-01-01 08:30:00'); 

Der zweite Wert (in diesem Fall -15) muss numerisch sein (d. h. keine Zeichenfolge wie „00:15“). Wenn Sie Stunden und Minuten subtrahieren müssen, würde ich empfehlen, die Zeichenfolge auf dem :aufzuteilen, um die Stunden und Minuten zu erhalten, und mit etwas wie

zu subtrahieren
SELECT DATEADD(minute, -60 * @h - @m, '2000-01-01 08:30:00'); 

wobei @h der Stundenteil Ihres Strings und @m der Minutenteil Ihres Strings ist

BEARBEITEN:

Hier ist ein besserer Weg:

SELECT CAST('2000-01-01 08:30:00' as datetime) - CAST('00:15' AS datetime)