Sql server 在SQL Server中,这些返回日期时间列的时间的方法有什么不同?
现在,我知道了3种返回时间的方法:Sql server 在SQL Server中,这些返回日期时间列的时间的方法有什么不同?,sql-server,sql-server-2008,datetime,time,Sql Server,Sql Server 2008,Datetime,Time,现在,我知道了3种返回时间的方法: CONVERT(varchar,Date,8) CONVERT(varchar,Date,108) 转换(时间、日期) 既然#1和#2返回相同的答案,它们之间的区别是什么 为什么#3返回看起来不同的东西——它仍然等同于#1/#2的输出吗 还有别的办法吗 谢谢 第1点。二,。他们是平等的。 第3点以其他数据类型返回 第1点和第2点相等,但第3点不同 您可以检查不同的格式。第1点。二,。他们是平等的。 第3点以其他数据类型返回 第1点和第2点相等,但第3点不同 您
CONVERT(varchar,Date,8)
CONVERT(varchar,Date,108)
转换(时间、日期)
谢谢 第1点。二,。他们是平等的。 第3点以其他数据类型返回 第1点和第2点相等,但第3点不同
您可以检查不同的格式。第1点。二,。他们是平等的。 第3点以其他数据类型返回 第1点和第2点相等,但第3点不同 您可以检查不同的格式。请查看。格式
8
为hh:mi:ss
。如果将100
添加到格式中,它将使用四位数的年份而不是两位数的年份。由于格式8
是一种时间格式,8
和108
具有相同的输出
第三个选项将datetime
转换为time
。时间
不是字符串,没有格式。这取决于客户端如何显示,通常使用本地计算机的区域和语言设置。请查看。格式8
为hh:mi:ss
。如果将100
添加到格式中,它将使用四位数的年份而不是两位数的年份。由于格式8
是一种时间格式,8
和108
具有相同的输出
第三个选项将
datetime
转换为time
。时间
不是字符串,没有格式。它取决于客户端如何显示,通常使用本地计算机的区域和语言设置。尽量避免使用裸varchar
-始终指定长度(或max
)。除了CONVERT
之外,几乎从来都不是您想要的。请尽量避免使用barevarchar
-始终指定长度(或max
)。除了CONVERT
,您几乎永远不会想要什么。