参数数据类型uniqueidentifier对子字符串函数的参数1无效

时间:2010-01-31 00:27:32

标签: sql-server-2005 tsql substring uniqueidentifier

我正在尝试使用TSQL子字符串函数获取Guid字段的第一部分,如下所示

SELECT SUBSTRING(Guid, 1, 8) AS Gu FROM MyTable

但我得到的只是这个错误。

参数数据类型uniqueidentifier对子字符串函数的参数1无效。

那么这里发生了什么?我应该首先将Guid视为纯字符串还是......?

提前致谢!

1 个答案:

答案 0 :(得分:11)

试试这个:

SELECT SUBSTRING(CAST(Guid AS varchar(38)), 1, 8) AS Gu FROM MyTable

您无法直接在SUBSTRING上执行uniqueidentifier;您需要先将其转换为字符串类型(varchar)。