CHECKSUM_AGG(校验和()) returns 星 (************)
CHECKSUM_AGG(checksum()) returns stars (**********)
我在打电话
id int ,
tableid int,
seid int,
ptid int,
VISID NVARCHAR(50),
Tname AS SYSNAME ,
ColumnValue NVARCHAR(50),
ColumnKey NVARCHAR(50),
@HashValue NVARCHAR(50) OUTPUT
select @HashValue = CHECKSUM_AGG(checksum(id,tableid, seid, ptid, VISID, Tname, ColumnKey, ColumnValue)) from #FDATA
当#FDATA 包含:
17 3028 100 100003 SCRN form.LG_AE 320 InvInit
17 3028 100 100003 SCRN form.LG_AE 321 AuthIn
......... (6 rows in total with similar data, no null values)
它returns **********
但是当#FDATA 包含:
17 3019 101 101001 SCRN form.LG_AE 320 InvInit
17 3019 101 101001 SCRN form.LG_AE 321 AUTHIn
...... (65 rows in total with similar data, no null values)
它 returns 是预期的整数
根据this and comments, function STR
returns *
因为存储在@HashValue
变量中的数字超过指定长度(默认10)。使用 CAST
而不是 STR
,例如:
PRINT CAST(@HashValue as varchar(20))
或者只打印值而不转换它:
PRINT @HashValue
或使用函数STR
,但长度参数:
PRINT STR(@HashValue,20)
我在打电话
id int ,
tableid int,
seid int,
ptid int,
VISID NVARCHAR(50),
Tname AS SYSNAME ,
ColumnValue NVARCHAR(50),
ColumnKey NVARCHAR(50),
@HashValue NVARCHAR(50) OUTPUT
select @HashValue = CHECKSUM_AGG(checksum(id,tableid, seid, ptid, VISID, Tname, ColumnKey, ColumnValue)) from #FDATA
当#FDATA 包含:
17 3028 100 100003 SCRN form.LG_AE 320 InvInit
17 3028 100 100003 SCRN form.LG_AE 321 AuthIn
......... (6 rows in total with similar data, no null values)
它returns **********
但是当#FDATA 包含:
17 3019 101 101001 SCRN form.LG_AE 320 InvInit
17 3019 101 101001 SCRN form.LG_AE 321 AUTHIn
...... (65 rows in total with similar data, no null values)
它 returns 是预期的整数
根据this and comments, function STR
returns *
因为存储在@HashValue
变量中的数字超过指定长度(默认10)。使用 CAST
而不是 STR
,例如:
PRINT CAST(@HashValue as varchar(20))
或者只打印值而不转换它:
PRINT @HashValue
或使用函数STR
,但长度参数:
PRINT STR(@HashValue,20)