配置和转换功能
SQL 中配置函数的一个示例是 @@SERVERNAME
函数。此函数提供运行 SQL 的本地服务器的名称。
SELECT @@SERVERNAME AS 'Server'
服务器 |
---|
SQL064 |
在 SQL 中,大多数数据转换都是隐式发生的,无需任何用户干预。
要执行无法隐式完成的任何转换,你可以使用 CAST
或 CONVERT
函数。
CAST
函数语法比 CONVERT
函数语法简单,但它的功能有限。
在这里,我们使用 CAST
和 CONVERT
函数将 datetime 数据类型转换为 varchar
数据类型。
CAST
函数始终使用默认样式设置。例如,它将使用格式 YYYY-MM-DD 表示日期和时间。
CONVERT
函数使用你指定的日期和时间样式。在这种情况下,3 指定日期格式 dd / mm / yy。
USE AdventureWorks2012
GO
SELECT FirstName + ' ' + LastName + ' was hired on ' +
CAST(HireDate AS varchar(20)) AS 'Cast',
FirstName + ' ' + LastName + ' was hired on ' +
CONVERT(varchar, HireDate, 3) AS 'Convert'
FROM Person.Person AS p
JOIN HumanResources.Employee AS e
ON p.BusinessEntityID = e.BusinessEntityID
GO
投 | 兑换 |
---|---|
David Hamiltion 于 2003-02-04 被聘用 | David Hamiltion 于 04/02/03 被聘用 |
转换函数的另一个例子是 PARSE
函数。此函数将字符串转换为指定的数据类型。
在函数的语法中,指定必须转换的字符串,AS
关键字,然后指定所需的数据类型。 (可选)你还可以指定应在其中格式化字符串值的区域性。如果未指定,则使用会话的语言。
如果字符串值无法转换为数字,日期或时间格式,则会导致错误。然后,你需要使用 CAST
或 CONVERT
进行转换。
SELECT PARSE('Monday, 13 August 2012' AS datetime2 USING 'en-US') AS 'Date in English'
英文日期 |
---|
2012-08-13 00:00:00.0000000 |