T-sql returns smallint 作为字符串

T-sql returns smallint as string

当我在 Transact-SQL 查询中声明一个类型为 SMALLINT 的变量@Number 时,它输出为一个字符串,我还可以将该变量与字符串进行比较。例如:

DECLARE @Number SMALLINT 
SET @Number = 12
IF (@Number LIKE '12')
    SET @Number = 1
SELECT @Number

有人知道这是为什么吗?

==运算符在 tsql 中不存在。您需要使用单个 =.

List of operators

DECLARE @Number SMALLINT 
SET @Number = 12
IF (@Number = 12)
    SET @Number = 1
SELECT @Number