sqlserver
sqlserver中的加减乘除算术运算,与平常的数学计算是一样的。比如,两个整数相加可以这样表示,直接使用加号连接两个整数 declare @n1 int = 5; declare @n2 int = 10; select @n1 + @n2
sqlserver中的减法,直接使用减号就行。比如,两个整数相减 declare @n3 int = 10; declare @n4 int = 2; select @n3 - @n4
sqlserver中的乘法,使用乘法符号连接即可,比如,两个整数相乘 declare @n5 int = 2; declare @n6 int = 3; select @n5 * @n6
sqlserver中的除法,使用除法符号连接即可,比如,两个整数相除 declare @n7 int = 20; declare @n8 int = 5; select @n7 / @n8
上面的计算都是计算结果,并没有将结果存储到某一个变量中,那么如何才能将值存起来呢?这个时候就可以使用set、select两种方式都行 declare @n10 int = 10; declare @n11 int = 2; set @n10 = @n10 + @n11; -- 执行完成后 @n10 = 12 select @n10 = @n10 + @n11; -- 执行完成后 @n10 = 14 select @n10;
上面的计算方式,可以简写,从sqlserver 2008开始可以使用 declare @n12 int = 10, @n13 int = 2; set @n12 += @n13; -- 执行完成后 @n12 = 12 set @n12 /= @n13; -- 执行完成后 @n12 = 6 set @n12 *= @n13; -- 执行完成后 @n12 = 12 set @n12 -= @n13; -- 执行完成后 @n12 = 10 select @n12
以上演示的都是同类型的算术运算,不同的类型需要转换,如果都是数字类型sqlserver可以自动转换成范围大的类型,如果是含有字符串类型,就需要进行类型转换 declare @n15 int = 15, @n16 float = 100.08, @n17 varchar(100) = 'Hello '; select @n15 + @n16, @n17 + cast(@n15 as varchar(10))