📅  最后修改于: 2023-12-03 14:47:35.877000             🧑  作者: Mango
在 SQL Server 中,SIGN()
函数用于返回一个数的符号。如果该数为正,则返回 1;如果该数为负,则返回 -1;如果该数为零,则返回 0。
SIGN(numeric_expression)
参数
numeric_expression
: 必需。要确定其符号的数值表达式。这可以是常量、变量或表达式。返回值
numeric_expression
大于 0,则返回 1。numeric_expression
等于 0,则返回 0。numeric_expression
小于 0,则返回 -1。使用 SIGN()
函数返回几个数字的符号:
SELECT SIGN(10) AS result; -- 返回 1
SELECT SIGN(-2.5) AS result; -- 返回 -1
SELECT SIGN(0) AS result; -- 返回 0
如果 numeric_expression
不是有效的数字表达式,则 SIGN()
函数将返回错误消息。
SIGN()
函数只接受一个参数,并且该参数必须为数字表达式。如果需要将非数字表达式转换为数字表达式,可以使用类似以下示例的 CAST()
函数:
SELECT SIGN(CAST('123' AS int)) AS result; -- 返回 1
使用 SIGN()
函数时,应确保输入参数的数据类型是正确的。例如,如果 numeric_expression
是小数,则返回的值将始终为 -1、0 或 1,因为这些是整数。如果需要保留小数位数,请使用 ROUND()
或 TRUNCATE()
函数,或将 numeric_expression
转换为 DECIMAL 数据类型。
以上内容是关于 SQL Server 中的 SIGN()
函数的介绍。希望对你有帮助!