我想将日期时间格式为(YYYY-MM-DD hh:mm:ss.nnnnnnn)的列(EXECUTION_LOCAL_DATE_TIME)转换为格式(YYYY-MM-DD)。我怎么得到这个。我正在使用SQL Server Management Studio
答案 0 :(得分:1)
如果您打算仅获取DATETIME的DATE部分,则可以将格式转换为DATE(请注意,这将返回“ Date”数据类型,而不是专门格式化为字符串“ YYYY-MM-DD” )
例如:
DECLARE @Dt DATETIME = '2019-01-25T12:00:00'
SELECT CONVERT(DATE, @Dt)
将返回'2019-01-25'
答案 1 :(得分:0)
您需要CAST()函数:
答案 2 :(得分:0)
理想情况下,您应该从查询中返回日期时间格式,并让您的表示层处理格式。
但是,如果您使用的是SQL Server 2012或更高版本,则可以使用Format()函数。请参阅以下答案:
答案 3 :(得分:0)
如果您使用的是SQL Server 2012或更高版本,则可以使用FORMAT()函数。
您需要的是
SELECT FORMAT(EXECUTION_LOCAL_DATE_TIME, 'yyyy-MM-dd') FROM TABLE_NAME
您可以在此处找到其他信息
https://www.mssqltips.com/sqlservertip/2655/format-sql-server-dates-with-format-function/ https://docs.microsoft.com/en-us/sql/t-sql/functions/format-transact-sql?view=sql-server-2017
答案 4 :(得分:0)
这是为我工作的代码
SELECT convert(varchar, EXECUTION_LOCAL_DATE_TIME, 111) from Tablename
Execution_Local_Date_Time
将转换为yyyy/mm/dd
格式。