zoukankan      html  css  js  c++  java
  • 吴裕雄--天生自然MySQL学习笔记:MySQL 运算符

    要介绍 MySQL 的运算符及运算符的优先级。 MySQL 主要有以下几种运算符:
    算术运算符
    比较运算符
    逻辑运算符
    位运算符
    算术运算符
    MySQL 支持的算术运算符包括:

    在除法运算和模运算中,如果除数为0,将是非法除数,返回结果为NULL。
    1、加
    mysql> select 1+2;
    +-----+
    | 1+2 |
    +-----+
    |   3 |
    +-----+
    
    2、减
    mysql> select 1-2;
    +-----+
    | 1-2 |
    +-----+
    |  -1 |
    +-----+
    
    3、乘
    mysql> select 2*3;
    +-----+
    | 2*3 |
    +-----+
    |   6 |
    +-----+
    
    4、除
    mysql> select 2/3;
    +--------+
    | 2/3    |
    +--------+
    | 0.6667 |
    +--------+
    
    5、商
    mysql> select 10 DIV 4;
    +----------+
    | 10 DIV 4 |
    +----------+
    |        2 |
    +----------+
    
    MySQL 教程
    MySQL 教程
    MySQL 安装
    MySQL 管理
    MySQL PHP 语法
    MySQL 连接
    MySQL 创建数据库
    MySQL 删除数据库
    MySQL 选择数据库
    MySQL 数据类型
    MySQL 创建数据表
    MySQL 删除数据表
    MySQL 插入数据
    MySQL 查询数据
    MySQL WHERE 子句
    MySQL UPDATE 更新
    MySQL DELETE 语句
    MySQL LIKE 子句
    MySQL UNION
    MySQL 排序
    MySQL 分组
    MySQL 连接的使用
    MySQL NULL 值处理
    MySQL 正则表达式
    MySQL 事务
    MySQL ALTER命令
    MySQL 索引
    MySQL 临时表
    MySQL 复制表
    MySQL 元数据
    MySQL 序列使用
    MySQL 处理重复数据
    MySQL 及 SQL 注入
    MySQL 导出数据
    MySQL 导入数据
    MySQL 函数
    MySQL 运算符
     MySQL 函数
    MySQL 运算符
    本章节我们主要介绍 MySQL 的运算符及运算符的优先级。 MySQL 主要有以下几种运算符:
    算术运算符
    比较运算符
    逻辑运算符
    位运算符
    算术运算符
    MySQL 支持的算术运算符包括:
    
    运算符    作用
    +    加法
    -    减法
    *    乘法
    / 或 DIV    除法
    % 或 MOD    取余
    在除法运算和模运算中,如果除数为0,将是非法除数,返回结果为NULL。
    
    1、加
    
    mysql> select 1+2;
    +-----+
    | 1+2 |
    +-----+
    |   3 |
    +-----+
    2、减
    
    mysql> select 1-2;
    +-----+
    | 1-2 |
    +-----+
    |  -1 |
    +-----+
    3、乘
    
    mysql> select 2*3;
    +-----+
    | 2*3 |
    +-----+
    |   6 |
    +-----+
    4、除
    
    mysql> select 2/3;
    +--------+
    | 2/3    |
    +--------+
    | 0.6667 |
    +--------+
    5、商
    
    mysql> select 10 DIV 4;
    +----------+
    | 10 DIV 4 |
    +----------+
    |        2 |
    +----------+
    
    6、取余
    mysql> select 10 MOD 4;
    +----------+
    | 10 MOD 4 |
    +----------+
    |        2 |
    +----------+
    比较运算符
    SELECT 语句中的条件语句经常要使用比较运算符。通过这些比较运算符,可以判断表中的哪些记录是符合条件的。比较结果为真,则返回 1,为假则返回 0,比较结果不确定则返回 NULL

     

    1、等于
    mysql> select 2=3;
    +-----+
    | 2=3 |
    +-----+
    |   0 |
    +-----+
    
    mysql> select NULL = NULL;
    +-------------+
    | NULL = NULL |
    +-------------+
    |        NULL |
    +-------------+
    
    2、不等于
    mysql> select 2<>3;
    +------+
    | 2<>3 |
    +------+
    |    1 |
    +------+
    
    3、安全等于
    与 = 的区别在于当两个操作码均为 NULL 时,其所得值为 1 而不为 NULL,而当一个操作码为 NULL 时,其所得值为 0而不为 NULL。
    mysql> select 2<=>3;
    +-------+
    | 2<=>3 |
    +-------+
    |     0 |
    +-------+
    
    mysql> select null=null;
    +-----------+
    | null=null |
    +-----------+
    |      NULL |
    +-----------+
    
    mysql> select null<=>null;
    +-------------+
    | null<=>null |
    +-------------+
    |           1 |
    +-------------+
    
    4、小于
    mysql> select 2<3;
    +-----+
    | 2<3 |
    +-----+
    |   1 |
    +-----+
    
    5、小于等于
    mysql> select 2<=3;
    +------+
    | 2<=3 |
    +------+
    |    1 |
    +------+
    
    6、大于
    mysql> select 2>3;
    +-----+
    | 2>3 |
    +-----+
    |   0 |
    +-----+
    
    7、大于等于
    mysql> select 2>=3;
    +------+
    | 2>=3 |
    +------+
    |    0 |
    +------+
    
    8BETWEEN
    mysql> select 5 between 1 and 10;
    +--------------------+
    | 5 between 1 and 10 |
    +--------------------+
    |                  1 |
    +--------------------+
    
    9IN
    mysql> select 5 in (1,2,3,4,5);
    +------------------+
    | 5 in (1,2,3,4,5) |
    +------------------+
    |                1 |
    +------------------+
    
    10NOT IN
    mysql> select 5 not in (1,2,3,4,5);
    +----------------------+
    | 5 not in (1,2,3,4,5) |
    +----------------------+
    |                    0 |
    +----------------------+
    
    11IS NULL
    mysql> select null is NULL;
    +--------------+
    | null is NULL |
    +--------------+
    |            1 |
    +--------------+
    
    mysql> select 'a' is NULL;
    +-------------+
    | 'a' is NULL |
    +-------------+
    |           0 |
    
    12IS NOT NULL
    mysql> select null IS NOT NULL;
    +------------------+
    | null IS NOT NULL |
    +------------------+
    |                0 |
    +------------------+
    
    mysql> select 'a' IS NOT NULL;
    +-----------------+
    | 'a' IS NOT NULL |
    +-----------------+
    |               1 |
    +-----------------+
    
    13LIKE
    mysql> select '12345' like '12%';
    +--------------------+
    | '12345' like '12%' |
    +--------------------+
    |                  1 |
    +--------------------+
    
    mysql> select '12345' like '12_';
    +--------------------+
    | '12345' like '12_' |
    +--------------------+
    |                  0 |
    +--------------------+
    
    14、REGEXP
    mysql> select 'beijing' REGEXP 'jing';
    +-------------------------+
    | 'beijing' REGEXP 'jing' |
    +-------------------------+
    |                       1 |
    +-------------------------+
    
    mysql> select 'beijing' REGEXP 'xi';
    +-----------------------+
    | 'beijing' REGEXP 'xi' |
    +-----------------------+
    |                     0 |
    +-----------------------+
    逻辑运算符用来判断表达式的真假。如果表达式是真,结果返回 1。如果表达式是假,结果返回 0

    1、与
    mysql> select 2 and 0;
    +---------+
    | 2 and 0 |
    +---------+
    |       0 |
    +---------+
    
    mysql> select 2 and 1;   
    +---------+     
    | 2 and 1 |      
    +---------+      
    |       1 |      
    +---------+
    2、或
    mysql> select 2 or 0;
    +--------+
    | 2 or 0 |
    +--------+
    |      1 |
    +--------+
    
    mysql> select 2 or 1;
    +--------+
    | 2 or 1 |
    +--------+
    |      1 |
    +--------+
    
    mysql> select 0 or 0;
    +--------+
    | 0 or 0 |
    +--------+
    |      0 |
    +--------+
    
    mysql> select 1 || 0;
    +--------+
    | 1 || 0 |
    +--------+
    |      1 |
    +--------+
    3、非
    mysql> select not 1;
    +-------+
    | not 1 |
    +-------+
    |     0 |
    +-------+
    
    mysql> select !0;
    +----+
    | !0 |
    +----+
    |  1 |
    +----+
    4、异或
    mysql> select 1 xor 1;
    +---------+
    | 1 xor 1 |
    +---------+
    |       0 |
    +---------+
    
    mysql> select 0 xor 0;
    +---------+
    | 0 xor 0 |
    +---------+
    |       0 |
    +---------+
    
    mysql> select 1 xor 0;
    +---------+
    | 1 xor 0 |
    +---------+
    |       1 |
    +---------+
    
    mysql> select null or 1;
    +-----------+
    | null or 1 |
    +-----------+
    |         1 |
    +-----------+
    
    mysql> select 1 ^ 0;
    +-------+
    | 1 ^ 0 |
    +-------+
    |     1 |
    +-------+
    位运算符是在二进制数上进行计算的运算符。位运算会先将操作数变成二进制数,进行位运算。然后再将计算结果从二进制数变回十进制数。

    1、按位与
    mysql> select 3&5;
    +-----+
    | 3&5 |
    +-----+
    |   1 |
    +-----+
    
    2、按位或
    mysql> select 3|5;
    +-----+
    | 3|5 |
    +-----+
    |   7 |
    +-----+
    
    3、按位异或
    mysql> select 3^5;
    +-----+
    | 3^5 |
    +-----+
    |   6 |
    +-----+
    
    4、按位取反
    mysql> select ~18446744073709551612;
    +-----------------------+
    | ~18446744073709551612 |
    +-----------------------+
    |                     3 |
    +-----------------------+
    
    5、按位右移
    mysql> select 3>>1;
    +------+
    | 3>>1 |
    +------+
    |    1 |
    +------+
    
    6、按位左移
    
    mysql> select 3<<1;
    +------+
    | 3<<1 |
    +------+
    |    6 |
    +------+

  • 相关阅读:
    中国黑客传说:游走在黑暗中的精灵
    智能硬件安全入门
    迈克菲:2016年的八大网络安全威胁
    走进科学之WAF(Web Appllication Firewall)篇
    从对SAE的一次授权安全评估浅谈云安全
    沟通的艺术,心理学与生活,学会提问
    知道创宇研发技能表v3.0
    SYN Cookie的原理和实现
    1043. 输出PATest(20)
    1042. 字符统计(20)
  • 原文地址:https://www.cnblogs.com/tszr/p/12116251.html
Copyright © 2011-2022 走看看