我可以从nvarchar(max)字段创建哈希值吗?

时间:2014-12-17 15:20:30

标签: sql sql-server tsql hash

是否可以从SQL中的NVARCHAR(Max)字段创建哈希值,以及如何创建哈希值?

例如:

SELECT Name, HASH(Name) --How to achieve this?
FROM People

3 个答案:

答案 0 :(得分:2)

使用checksum()(记录为here)或binary_checksum()

select name, checksum(name)
from people;

答案 1 :(得分:1)

DECLARE @HashThis nvarchar(max);
SET @HashThis = CONVERT(nvarchar(max),name);
SELECT HASHBYTES('SHA1', @HashThis);

答案 2 :(得分:0)

您可以使用sql server中已有的系统功能: - sys.fn_repl_hash_binary

SELECT Name, sys.fn_repl_hash_binary(cast(name as varbinary(max)))
FROM People