TransactSQL 示例 如何获取一个变量的数据类型

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

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))

结果图:

image

在来一个示例:

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

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

image
本文已结束,谢谢.

作者的文章帮助很大
声明: 本文版权归作者dotNetDR_和博客园共有,转载必须保留此段声明。
Service and Support: 点击这里给我发消息
ASP.NET MVC 4.0-II群  cnblogs_码农
原文地址:https://www.cnblogs.com/highend/p/TSQL_typeof.html