sql server2005版本中,len函数计算了字符串末尾的空格的长度,以下是测试脚本:
print @@version declare @v varchar(max) set @v = 'hp, ' print @v + 't' print len(@v) print left(@v,len(@v) - 1) + 't'
2005的执行结果:
Microsoft SQL Server 2005 - 9.00.1399.06 (Intel X86) Oct 14 2005 00:33:37 Copyright (c) 1988-2005 Microsoft Corporation Enterprise Edition on Windows NT 5.2 (Build 3790: Service Pack 2) hp, t 4 hp,t --截取掉的是末尾的空格
2008的输出结果:
Microsoft SQL Server 2008 R2 (SP2) - 10.50.4000.0 (X64)
Jun 28 2012 08:36:30
Copyright (c) Microsoft Corporation
Enterprise Edition (64-bit) on Windows NT 6.1 <X64> (Build 7601: Service Pack 1) (Hypervisor)
hp, t
3
hpt --截取掉的是末尾的,
2012的输出结果:
Microsoft SQL Server 2012 (SP1) - 11.0.3000.0 (X64) Oct 19 2012 13:38:57 Copyright (c) Microsoft Corporation Enterprise Edition (64-bit) on Windows NT 6.2 <X64> (Build 9200: ) hp, t 3 hpt --截取掉的是末尾的,