新聞中心

| 運算符 | 作用 | 使用方法 |
|---|---|---|
| + | 加法運算 | 用于獲得一個或多個值的和 |
| - | 減法運算 | 用于從一個值中減去另一個值 |
| * | 乘法運算 | 使數(shù)字相乘,得到兩個或多個值的乘積 |
| / | 除法運算,返回商 | 用一個值除以另一個值得到商 |
| %,MOD | 求余運算,返回余數(shù) | 用一個值除以另一個值得到余數(shù) |
示例 1
創(chuàng)建表 temp,定義數(shù)據(jù)類型為 INT 的字段 num,并插入值 64,對 num 值進行算術(shù)運算。
創(chuàng)建 temp 表語法如下:
CREATE TABLE temp(num INT);
向字段 num 插入數(shù)據(jù) 64,語法如下。
INSERT INTO temp VALUE (64);
對 num 的值進行加法和減法運算:
mysql> SELECT num,num+10,num-3+5,num+36.5 FROM temp; +------+--------+---------+----------+ | num | num+10 | num-3+5 | num+36.5 | +------+--------+---------+----------+ | 64 | 74 | 66 | 100.5 | +------+--------+---------+----------+ 1 row in set (0.01 sec)
上面計算是對 temp 表中的 num 字段的值進行加法和減法的運算,而且由于
+和
-的優(yōu)先級相同,因此先加后減或者先減后加之后的結(jié)果是相同的。
示例 2
下面對 temp 表中的 num 進行乘法、除法運算,運行結(jié)果如下:
mysql> SELECT num,num*2,num/2,num/3,num%3 FROM temp; +------+-------+---------+---------+-------+ | num | num*2 | num/2 | num/3 | num%3 | +------+-------+---------+---------+-------+ | 64 | 128 | 32.0000 | 21.3333 | 1 | +------+-------+---------+---------+-------+ 1 row in set (0.00 sec)
由上面計算結(jié)果可以看出,對 num 進行除法運算時,由于 64 無法被 3 整除,因此 MySQL 對 num/3 求商的結(jié)果保存到了小數(shù)點后面四位,結(jié)果為 21.3333;64 除以 3 的余數(shù)為 1,因此取余運算 num%3 的結(jié)果為 1。
對于取余運算,還可以使用 MOD(a,b) 函數(shù),MOD(a,b) 相當于 a%b,運行結(jié)果如下:
mysql> SELECT MOD (num,3) FROM temp; +-------------+ | MOD (num,3) | +-------------+ | 1 | +-------------+ 1 row in set (0.00 sec)
示例 3
數(shù)學運算中,除數(shù)為 0 的除法是沒有意義的。所以在除法運算和取余運算中,如果除數(shù)為 0,那么返回結(jié)果為 NULL.
在除法運算和取余運算中,除數(shù)為 0 的運行結(jié)果如下所示:
mysql> SELECT num,num/0,num%0 FROM temp; +------+-------+-------+ | num | num/0 | num%0 | +------+-------+-------+ | 64 | NULL | NULL | +------+-------+-------+ 1 row in set (0.00 sec)
從上面運行結(jié)果可以看到,對 num 進行除法求商或者求余運算的結(jié)果均為 NULL。
當前名稱:MySQL算術(shù)運算符
網(wǎng)頁URL:http://m.fisionsoft.com.cn/article/dpedood.html


咨詢
建站咨詢
