sql server date im Format yyyy-MM-ddThh: mm: ssZ

Ich muss einen Satz von data im SQL-server in folgendes Format formatieren.

yyyy-MM-ddThh:mm:ssZ 

Ich kann nicht scheinen zu finden, wie man das date mit den T und Z-Teile in der characterfolge enthalten formatieren

Irgendwelche Ideen, wie man dieses Format in einer SQL-Abfrage erreicht?

Solutions Collecting From Web of "sql server date im Format yyyy-MM-ddThh: mm: ssZ"

Nach der SQL server 2005 Bücher Online-Seite auf Cast und Convert Sie verwenden date Format 127 – wie im folgenden Beispiel

 CONVERT(varchar(50), DateValueField, 127) 

SQL server 2000-Dokumentation bezieht sich nicht auf dieses Format – vielleicht ist es nur ab Version 2005 verfügbar.

Hinweis auf die am Ende hinzugefügte timezone (ab Note 7 in den docs): Die optionale timezonenanzeige Z wird verwendet, um es einfacher zu machen, XML-datetime-Werte zuzuordnen, die timezoneninformationen zu SQL server-datetime-Werten haben, die keine haben timezone. Z ist der Indikator für die timezone UTC-0. Andere timezonen sind mit HH: MM Versatz in der + oder – Richtung angegeben. Zum Beispiel: 2006-12-12T23: 45: 12-08: 00.

Danke an Martin für diese Anmerkung: Du solltest in der Lage sein, STUFF zu benutzen, um die Milisekunden zu entfernen, da diese in einer festen Position von links der Saite sind. dh

 SELECT STUFF(CONVERT(VARCHAR(50),GETDATE(), 127) ,20,4,'') 

Sie können C # -Ausgabe in SQL unterhalb von:

SELECT CONVERT(datetime,CONVERT(datetimeoffset,'2016-04-14 15:43:46Z'))

Bitte versuchen Sie es, es funktioniert gut in allen SQL server Versionen

SELECT CONVERT (varchar (23), DateValueField, 127)