Bootstrap

MySQL运算符

1.算术运算符



算术运算符主要用于数学运算,其可以连接运算符前后的两个数值或表达式进行加(+)、减(-)、乘(*)、除(/)和取模(%)运算。

由运算结果可以得出如下结论:
一个整数类型的值对整数进行加法和减法操作,结果还是一个整数;
一个整数类型的值对浮点数进行加法和减法操作,结果是一个浮点数;
加法和减法的优先级相同,进行先加后减操作与进行先减后加操作的结果是一样的。

在Java中,+的左右两边如果有字符串,那么表示字符串的拼接。但是在MySQL中+只表示数值相加。如果遇到非数值类型,先尝试转成数值,如果转失败,就按0计算。(补充:MySQL中字符串拼接要使用字符串函数CONCAT()实现)

2.比较运算符 


比较运算符用来对表达式左边的操作数和右边的操作数进行比较,比较的结果为真则返回1,比较的结果为假则返回0,其他情况则返回NULL
比较运算符经常被用来作为SELECT查询语句的条件来使用,返回符合条件的结果记录。

在MySQL中,比较运算符用于比较两个表达式的值,并返回一个布尔值(true或false)。下面是一些MySQL比较运算符的示例:

  1. 等于(=):比较两个表达式是否相等。 示例:SELECT * FROM table WHERE column1 = 10;

  2. 不等于(<>或!=):比较两个表达式是否不相等。 示例:SELECT * FROM table WHERE column1 <> 10;

  3. 大于(>):比较左边表达式是否大于右边表达式。 示例:SELECT * FROM table WHERE column1 > 10;

  4. 大于等于(>=):比较左边表达式是否大于或等于右边表达式。 示例:SELECT * FROM table WHERE column1 >= 10;

  5. 小于(<):比较左边表达式是否小于右边表达式。 示例:SELECT * FROM table WHERE column1 < 10;

  6. 小于等于(<=):比较左边表达式是否小于或等于右边表达式。 示例:SELECT * FROM table WHERE column1 <= 10;

  7. BETWEEN...AND...:用于在指定范围内比较表达式的值。 示例:SELECT * FROM table WHERE column1 BETWEEN 5 AND 10;

  8. IN:用于比较表达式的值是否包含在指定的值列表中。 示例:SELECT * FROM table WHERE column1 IN (1, 2, 3);

  9. LIKE:用于按模式匹配比较表达式的值。 示例:SELECT * FROM table WHERE column1 LIKE 'abc%';

这些是MySQL中常用的比较运算符的示例。根据具体的需求,可以使用不同的比较运算符来实现相应的比较操作。

3.逻辑运算符 

逻辑运算符主要用来判断表达式的真假,在MySQL中,逻辑运算符的返回结果为1、0或者NULL。MySQL中支持4种逻辑运算符如下:

  1. AND运算符示例: SELECT * FROM students WHERE age > 18 AND gender = 'M';

该示例语句会选择年龄大于18岁且性别为男性的学生。

  1. OR运算符示例: SELECT * FROM students WHERE age > 18 OR gender = 'M';

该示例语句会选择年龄大于18岁或性别为男性的学生。

  1. NOT运算符示例: SELECT * FROM students WHERE NOT age > 18;

该示例语句会选择年龄不大于18岁的学生。

  1. IN运算符示例: SELECT * FROM students WHERE gender IN ('M', 'F');

该示例语句会选择性别为男性或女性的学生。

  1. BETWEEN运算符示例: SELECT * FROM students WHERE age BETWEEN 18 AND 25;

该示例语句会选择年龄在18到25岁之间的学生。

  1. LIKE运算符示例: SELECT * FROM students WHERE name LIKE 'J%';

该示例语句会选择名字以字母“J”开头的学生。

  1. IS NULL运算符示例: SELECT * FROM students WHERE address IS NULL;

该示例语句会选择地址为空的学生。

  1. EXISTS运算符示例: SELECT * FROM students WHERE EXISTS (SELECT * FROM scores WHERE scores.student_id = students.id);

该示例语句会选择存在成绩记录的学生。

4.位运算符 

位运算符是在二进制数上进行计算的运算符。位运算符会先将操作数变成二进制数,然后进行位运算,最后将计
算结果从二进制变回十进制数。
MySQL支持的位运算符如下:

SELECT 12&5,12|5,12^5
FROM DUAL;

结果为

原因:

5.运算符的优先级

;