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