在某些时候或许你会有写如下的代码

SELECT 20 / 0.1

然而你无法知道这个表达式最后会返回什么样的SQL数据类型!这时你或许会想起C#里的那个typeof.
Now, 我将为你介绍在SQL Server里的typeof的功能, 当然这个东西也是博主从Google来的.
so, let start

首先你想要知道一个表达式最后返回什么样的数据类型的话可以用SQL Server系统自带的函数SQL_VARIANT_PROPERTY去得出结果!以下为示例:

PRINT CAST(SQL_VARIANT_PROPERTY(20, 'BaseType') AS VARCHAR(50))
PRINT CAST(SQL_VARIANT_PROPERTY(0.1, 'BaseType') AS VARCHAR(50))
PRINT CAST(SQL_VARIANT_PROPERTY(20 / 0.1, 'BaseType') AS VARCHAR(50))

结果图:

Transact-SQL 示例 - 如何获取一个变量的数据类型

 

在来一个示例:

DECLARE @a nvarchar(10)
SET @a = N'Hello World'

SELECT @a, CAST(SQL_VARIANT_PROPERTY(@a, 'BaseType') AS VARCHAR(50))

Transact-SQL 示例 - 如何获取一个变量的数据类型
本文已结束,谢谢.

相关文章:

  • 2022-12-23
  • 2021-12-05
  • 2021-07-19
  • 2022-01-23
  • 2022-01-28
  • 2021-11-22
  • 2022-01-26
  • 2022-03-03
猜你喜欢
  • 2021-11-13
  • 2021-11-15
  • 2021-11-05
  • 2021-07-14
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案