MySQL运算符包括四类:算术运算符、比较运算符、逻辑运算符和位运算符。

1. 算术运算符

用于种类数值运算。包括:加(+)、减(-)、乘(*)、除(/)、取余(%)。

除法除数为零时,执行结果为null。取余同样如此。

mysql> select 10,10/0,10%0;
+----+------+------+
| 10 | 10/0 | 10%0 |
+----+------+------+
| 10 | NULL | NULL |
+----+------+------+
1 row in set (0.00 sec)

2. 比较运算符

用于比较运算。包括:大于(>)、小于(<)、等于(=)、大于等于(>=)、小于等于(<=)、不等于(!=)、以及IN、BETWEEN AND、IS NULL、GREATEST、LEAST、LIKE、REGEXP等。

LEAST,在有两个或多个参数时,返回最小值;

GREATEST,在有两个或多个参数时,返回最大值;

mysql> select least(2,0),greatest(10,12,11);
+------------+--------------------+
| least(2,0) | greatest(10,12,11) |
+------------+--------------------+
| 0 | 12 |
+------------+--------------------+
1 row in set (0.09 sec)

BETWEEN AND,格式为a between min and max;

mysql> select 10 between 20 and 2,10 between 2 and 20;
+---------------------+---------------------+
| 10 between 20 and 2 | 10 between 2 and 20 |
+---------------------+---------------------+
| 0 | 1 |
+---------------------+---------------------+
1 row in set (0.05 sec)

REGEXP,正则式匹配。

mysql> select 'ssky' regexp '^s','ssky' regexp 'y$', 'ssky' regexp '.sky','ssly' regexp '[ab]';
+--------------------+--------------------+----------------------+----------------------+
| 'ssky' regexp '^s' | 'ssky' regexp 'y$' | 'ssky' regexp '.sky' | 'ssly' regexp '[ab]' |
+--------------------+--------------------+----------------------+----------------------+
| 1 | 1 | 1 | 0 |
+--------------------+--------------------+----------------------+----------------------+
1 row in set (0.03 sec)

3. 逻辑运算符

逻辑运算符的求值所得结果均为1(true)或0(false),这类运算行有逻辑非(NOT 或 !)、逻辑与(AND 或 &&)、逻辑或(OR 或 ||)、逻辑异或(XOR)。

not null的返回值为NULL;

mysql> select not 0, not 1, not null;
+-------+-------+----------+
| not 0 | not 1 | not null |
+-------+-------+----------+
| 1 | 0 | NULL |
+-------+-------+----------+
1 row in set (0.00 sec)

and运算中一个操作数为null,另一操作数非零值,则返回值为NULL;or运算中当有一个操作数为null,另一个操作数非零值,则返回1,否则返回0,当两个数都为null时,返回NULL;

mysql> select 1 or 0, 1 or 2, null or 0,null or 2, null || null;
+--------+--------+-----------+-----------+--------------+
| 1 or 0 | 1 or 2 | null or 0 | null or 2 | null || null |
+--------+--------+-----------+-----------+--------------+
| 1 | 1 | NULL | 1 | NULL |
+--------+--------+-----------+-----------+--------------+
1 row in set (0.00 sec)

xor运算中任一个操作数为null则返回值为NULL。

4. 位操作运算符

参与运算的操作数,按二进制位进行运算。包括位与(&)、位或(|)、位非(~)、位异或(^)、左移(<<)、右移(>>)等6种。

mysql> select 1<<2,4<<2,1>>1,16>>2,bin(~4);
+------+------+------+-------+------------------------------------------------------------------+
| 1<<2 | 4<<2 | 1>>1 | 16>>2 | bin(~4) |
+------+------+------+-------+------------------------------------------------------------------+
| 4 | 16 | 0 | 4 | 1111111111111111111111111111111111111111111111111111111111111011 |
+------+------+------+-------+------------------------------------------------------------------+
1 row in set (0.00 sec)

上面使用了bin()函数查看4取反之后的结果。

MySQL 5.6学习笔记(运算符)的更多相关文章

  1. MYSQL视图的学习笔记

    MYSQL视图的学习笔记,学至Tarena金牌讲师,金色晨曦科技公司技术总监沙利穆 课程笔记的综合. 视图及图形化工具   1.       视图的定义 视图就是从一个或多个表中,导出来的表,是一个虚 ...

  2. mySQl数据库的学习笔记

    mySQl数据库的学习笔记... ------------------ Dos命令--先在记事本中写.然后再粘贴到Dos中去 -------------------------------- mySQ ...

  3. Mysql数据库基础学习笔记

    Mysql数据库基础学习笔记 1.mysql查看当前登录的账户名以及数据库 一.单表查询 1.创建数据库yuzly,创建表fruits 创建表 ) ) ,) NOT NULL,PRIMARY KEY( ...

  4. Dart学习笔记-运算符-条件表达式-类型转换

    Dart学习笔记-运算符-条件表达式-类型转换 一.运算符 1.算术运算符 + (加)- (减)* (乘)/ (除)~/ (取整) %(取余) 2.关系运算符 == (等等) != (不等) > ...

  5. PHP和MySQL Web开发学习笔记介绍

    前言 从2016年2月1日开始,之后的几个月左右的时间里,我会写一个系列的PHP和MySQL Web开发的学习笔记.我之前一直从事Java语言的开发工作,最近这段时间非常想学习一门语言,就选择了PHP ...

  6. MySQL索引知识学习笔记

    目录 一.索引的概念 二.索引分类 三.索引用法 四 .索引架构简介 五.索引适用的情况 六.索引不适用的情况 继我的上篇博客:Oracle索引知识学习笔记,再记录一篇MySQL的索引知识学习笔记,本 ...

  7. MySQL属性SQL_MODE学习笔记

    最近在学习<MySQL技术内幕:SQL编程>并做了笔记,本博客是一篇笔记类型博客,分享出来,方便自己以后复习,也可以帮助其他人 SQL_MODE:MySQL特有的一个属性,用途很广,可以通 ...

  8. mySql 基本语法学习笔记

     create database if not exists yang;    drop database if exists yang;     show databases;   show dat ...

  9. mysql性能优化学习笔记(2)如何发现有问题的sql

    一.使用mysql慢查询日志对有效率问题的sql进行监控      1)开启慢查询       show variables like ‘slow_query_log’;//查看是否开启慢查询日志   ...

随机推荐

  1. ES6 Generator async

    Generator 函数是 ES6 提供的一种异步编程解决方案 async 函数使得异步操作变得更加方便,是 Generator 函数的语法糖. js单线程的原因是:避免DOM渲染冲突! 更新:201 ...

  2. JVM类加载机制与对象的生命周期

    转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6536048.html  虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验.转换解析和初始化,最 ...

  3. anagrams 查找序列里具有相同字符但顺序不同的单词

    [LeetCode] Anagrams   Given an array of strings, return all groups of strings that are anagrams. Not ...

  4. Linux 防火墙命令的操作命令CentOS

    service firewalld status; #查看防火墙状态 systemctl start firewalld.service;#开启防火墙 systemctl stop firewalld ...

  5. ppt整体配色方案

        背景色建议以灰色或者被色为主.       在百度云盘也有大量的ppt模板,还是非常不错的.http://pan.baidu.com/s/1bpDf7Fh    

  6. in文件

    in文件: 被调用的配置文件

  7. Spring3.0.3使用之异常解决

    2010-10-29  温馨提示:         以下异常仅在Spring3.0.3版本中遇到,其他版本可能也会遇到,读者可作参考.不保证会顺利通过.         近期在学习Spring3的一些 ...

  8. iOS 10 的一个重要更新-开发 iMessage 的第三方插件

    苹果官方的 Messages 在 iOS 10 推出了非常重大的更新,可能主要是想从其他 IM 巨头手里抢点市场份额回来,包括 Facebook Messenger, Wechat 和 Snapcha ...

  9. 【SqlServer】SqlServer中Alter语句的使用

    在修改Sql Server表结构时,常用到Alter语句,把一些常用的alter语句列举如下. 1:向表中添加字段 Alter table [表名] add [列名] 类型 2:  删除字段 Alte ...

  10. The request was denied by service delegate (SBMainWorkspace) for reason: Security ("Entitlement "com.apple.frontboard.debugapplications" required to launch applications for debugging").

    最近工程遇到了这个, The request was denied by service delegate (SBMainWorkspace) for reason: Security (" ...