运算符详解

1、算术运算符

运算符详解_第1张图片

1、一个整数类型的值对整数进行加法和减法操作,结果还是一个整数;

2、一个整数类型的值对浮点数进行加法和减法操作,结果是一个浮点数;

3、加法和减法的优先级相同,进行先加后减操作与进行先减后加操作的结果是一样的;

4、在MySQL中+只表示数 值相加。如果遇到非数值类型,先尝试转成数值,如果转失败,就按0计算。(补充:MySQL 中字符串拼接要使用字符串函数CONCAT()实现)

mysql> select 1 + 1;
+-------+
| 1 + 1 |
+-------+
|     2 |
+-------+
1 row in set (0.04 sec)

mysql> select 1 + 'a';
+---------+
| 1 + 'a' |
+---------+
|       1 |
+---------+
1 row in set, 1 warning (0.00 sec)

mysql> select 1 + '11a';
+-----------+
| 1 + '11a' |
+-----------+
|        12 |
+-----------+
1 row in set, 1 warning (0.00 sec)

mysql>
 

 1、一个数乘以整数1和除以整数1后仍得原数;

2、一个数乘以浮点数1和除以浮点数1后变成浮点数,数值与原数相等;

3、一个数除以整数后,不管是否能除尽,结果都为一个浮点数;

4、一个数除以另一个数,除不尽时,结果为一个浮点数,并保留到小数点后4位;

5、乘法和除法的优先级相同,进行先乘后除操作与先除后乘操作,得出的结果相同。

6、在数学运算中,0不能用作除数,在MySQL中,一个数除以0为NULL。

2、比较运算符

运算符详解_第2张图片

   1、等号运算符(=)判断等号两边的值、字符串或表达式是否相等,如果相等则返回1,不相等则返回 0。

   2、 如果等号两边的值一个是整数,另一个是字符串,则MySQL会将字符串转化为数字进行比较。

 3、如果等号两边的值、字符串或表达式中有一个为NULL,则比较结果为NULL。

运算符详解_第3张图片

1、LIKE运算符主要用来匹配字符串,通常用于模糊匹配,如果满足条件则返回1,否则返回 0。如果给定的值或者匹配条件为NULL,则返回结果为NULL。 LIKE运算符通常使用如下通配符: “%”:匹配0个或多个字符。 “_”:只能匹配一个字符。

2、REGEXP运算符用来匹配字符串,语法格式为: expr REGEXP 匹配条件:

(1)‘^’匹配以该字符后面的字符开头的字符串。

(2)‘$’匹配以该字符前面的字符结尾的字符串。

(3)‘.’匹配任何一个单字符。

(4)“[...]”匹配在方括号内的任何字符。例如,“[abc]”匹配“a”或“b”或“c”。为了命名字符的范围,使用一 个‘-’。“[a-z]”匹配任何字母,而“[0-9]”匹配任何数字。

(5)‘*’匹配零个或多个在它前面的字符。例如,“x*”匹配任何数量的‘x’字符,“[0-9]*”匹配任何数量的数字, 而“*”匹配任何数量的任何字符。

mysql> SELECT 'shkstart' REGEXP '^s', 'shkstart' REGEXP 't$', 'shkstart' REGEXP 'hk'; +------------------------+------------------------+-------------------------+ | 'shkstart' REGEXP '^s' | 'shkstart' REGEXP 't$' | 'shkstart' REGEXP 'hk' | +------------------------+------------------------+-------------------------+ | 1 | 1 | 1 | +------------------------+------------------------+-------------------------+ 1 row in set (0.01 sec

 3、逻辑运算符

运算符详解_第4张图片

逻辑异或(XOR)运算符是当给定的值中任意一个值为NULL时,则返回NULL;如果 两个非NULL的值都是0或者都不等于0时,则返回0;如果一个值为0,另一个值不为0时,则返回1。 

4、位运算符

运算符详解_第5张图片

 

你可能感兴趣的:(mysql,spring,java)