SQL Server cast() vs convert() [重复]

Posted

技术标签:

【中文标题】SQL Server cast() vs convert() [重复]【英文标题】:SQL Server cast() vs convert() [duplicate] 【发布时间】:2020-01-26 08:02:34 【问题描述】:

我对@9​​87654323@ 函数和convert() 函数之间的确切区别感到非常困惑,当然除了语法之外,我可以有效地决定何时使用哪个。

【问题讨论】:

见***.com/questions/707335/t-sql-cast-versus-convert。对于性能或您所说的何时使用:mssqltips.com/sqlservertip/3018/… 【参考方案1】:

来自link:

    CAST 是 ANSI 标准,而 CONVERT 是 SQL 服务器中的特定函数。在特定功能可以做什么和不能做什么方面也存在差异。 例如,CONVERT 函数可用于格式化,尤其是日期/时间、数据类型和货币/数据类型。同时,CAST 用于在转换的同时删除或减少格式。此外,CONVERT 可以激发设置日期格式选项,而 CAST 不能执行此功能。

    CAST 也是两者中更便携的功能。这意味着 CAST 函数可以被许多数据库使用。 CAST 也没有 CONVERT 强大和灵活。另一方面,CONVERT 允许更大的灵活性,并且是用于数据、时间值、传统数字和货币符号的首选函数。 CONVERT 在格式化数据格式时也很有用。

    CAST 函数还在转换时将小数和数值恢复为整数。它还可以用于截断整数的小数部分或值。

【讨论】:

以上是关于SQL Server cast() vs convert() [重复]的主要内容,如果未能解决你的问题,请参考以下文章

SQL Server 触发 CAST 函数

SQL Server 2008 - CAST 到 nvarchar 不起作用

SQL Server 与 T-SQL 中的 Cast 和 Convert 函数有啥区别? [复制]

SQL SERVER中强制类型转换cast和convert的区别

SQL SERVER中强制类型转换cast和convert的区别

SQL server cast () 字符串转换成时间的问题