关于一面试题。
好久没发贴了,发个贴攒点人气。
定义了两个变量,不通过第三个变量,把两个变量的值互换,不能用临时表及表变量。最好用SQL解决。
目前想到的是转换为字符型可以实现,还有什么其它方法没?
[解决办法]
[解决办法]
这个命题是有限制条件的,如果数据类型接近溢出范围,那么不采取另外一个变量,a+b的话数据就会溢出
另外,如果a,b是varchar类型的,
SQL 如下
DECLARE @a varchar(50),@b varchar(50)
SELECT @a='AA',@b='BBB'
SET @a=@a+@b
SET @b=LEFT(@a,LEN(@a)-LEN(@b))
SET @a=RIGHT(@a,LEN(@a)-LEN(@b))
SELECT @a AS a,@b AS b
/**
ab
BBBAA
**/