首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

sql中字符串直接用if比较,它是怎么办的

2012-01-19 
sql中字符串直接用if比较,它是怎么处理的?比如:declare@dvarchar(64),@evarchar(64)set@d 100set@e 200i

sql中字符串直接用if比较,它是怎么处理的?
比如   :

declare   @d   varchar(64)   ,@e   varchar(64)

set   @d= '100 '
set   @e= '200 '

if   @e> @d
begin
        --
end

这是怎么处理的,sql比较的是他们的asc码么

[解决办法]
ASCII
從左到右每位比較
[解决办法]
derrial()
2的ASCII比1的大所以“> ”
[解决办法]
--可以转化成int

declare @d varchar(64) ,@e varchar(64)

set @d= '100 '
set @e= '200 '

if cast(@e as int)> cast(@d as int)
begin
--
end

[解决办法]
的确是比较的ASCII

热点排行