SQL Server 常用关键词语法汇总-一、函数

时间:2024-10-09 13:21:03

1.1 CAST

CAST ( expression AS data_type [ ( length ) ] )
  • expression: 这是你想要转换的数据或表达式。
  • data_type: 目标数据类型,比如 INT, VARCHAR, DATE
    等等。
  • (length): 对于某些数据类型(如 CHAR, VARCHAR, BINARY,
    VARBINARY),可以指定长度。对于其他数据类型,这个参数是可选的或不适用的。

示例
字符串转换为整数

SELECT CAST('123' AS INT) AS ConvertedValue;

整数转换为字符串

SELECT CAST(123 AS VARCHAR(10)) AS ConvertedValue;

日期转换

SELECT CAST('2023-01-01' AS DATE) AS ConvertedDate;

浮点数转换为整数
需要注意的是,当将浮点数转换为整数时,SQL Server 会进行截断而不是四舍五入。

SELECT CAST(123.456 AS INT) AS ConvertedValue; -- 结果为 123

转换为布尔值
在 SQL Server 中,并没有直接的布尔类型,但是你可以使用位(bit)类型来表示布尔值。

SELECT CAST(1 AS BIT) AS ConvertedBoolean; -- 结果为 1(真)
SELECT CAST(0 AS BIT) AS ConvertedBoolean; -- 结果为 0(假)

注意事项

  • 当执行数据类型转换时,如果源数据与目标数据类型不兼容,可能会导致错误。
  • 在处理日期和时间数据时,确保输入的格式正确,否则可能会导致意外的结果或错误。
  • 使用 CAST 时,要确保转换后的数据类型能够容纳原始数据的所有可能值,以避免数据丢失或不准确。