Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Come formattare datetime in SQL SERVER

In SQL Server 2012 e versioni successive puoi utilizzare FORMAT() :

SELECT FORMAT(CURRENT_TIMESTAMP, 'yyyy-MM-dd hh:mm:ss tt')

Nelle versioni precedenti, potresti dover concatenare due o più conversioni datetime diverse per ottenere ciò di cui hai bisogno, ad esempio:

SELECT 
    CONVERT(CHAR(10), CURRENT_TIMESTAMP, 23) + ' ' + 
    RIGHT('0' + LTRIM(RIGHT(CONVERT(CHAR(20), CURRENT_TIMESTAMP, 22), 11)), 11);

Consulta la sezione Stili di data e ora di CAST e CONVERT (Transact-SQL) per tutti gli stili di formattazione incorporati.

Tengo presente che, a meno che tu non abbia una buona ragione, intendo un davvero buona ragione, la formattazione è solitamente un lavoro migliore per la tecnologia che visualizza i dati.